Django: Two questions on extending ListView with get_context_data

I tried something similar to this. I have three models:

class PartBase(models.Model):
    name = models.CharField('Name', max_length=120)
    price = models.DecimalField("Price per part", decimal_places=2, max_digits=6)       

class Sett(models.Model):
    name = models.CharField('Name', max_length=120)

class PartRelation(models.Model):
    part = models.ForeignKey(PartBase, on_delete=models.CASCADE)
    qty = models.PositiveIntegerField("Quantity")
    sett = models.ForeignKey(Sett, related_name='setts', on_delete=models.SET_NULL, null=True)

    def get_position_price(self):
        return self.qty * self.part.price

now I want to add the price of all the items in a Sett in a row in my HTML.

{% extends 'base.html' %}
{% block title %}
    Add Set
{% endblock title %}

{% block content %}
    <table class="table">
        <tr>
            <th>Set Name</th>
            <th>Total price</th>
        </tr>
    {% for set in setts %}
        <tr>
            <td>{{ set.name }}</td>
            <td>{{ set.test }}</td>
        </tr>
    {% endfor %}
    </table>
{% endblock %}

I wanted to override the get_context_data method somehow like this:

class SetListView(ListView):
    model = Sett
    context_object_name = "setts"

    def get_context_data(self,**kwargs):
        context = super(SetListView, self).get_context_data(**kwargs)
        context['test'] = "price"
        return context

But I only get an empty field in the template (which I assumed would have the word "price".

I can access the price in the shell via

for s in Sett.objects.all():
    pr = PartRelation.objects.filter(sett=s)
    price = 0
    for p in pr:
        price += p.get_position_price()

But how would I put the code from the shell in the get_context_data() function, so that for every row I get the corresponding total price?