How is the type of testing called where you test the subjective quality of a service?

  softwareengineering

Say you are creating some module or service, which is responsible for creating certain ratings, i.e. you’re creating a rating service for e-books and you are trying to judge how romantic a book is. And for that service you create some test, where you use real books, which you have read and know how you would rate them yourself and you try to compare the results from your service to what you would give. And of course the purpose of this test would be to improve the quality of the service later, if it shows up that the service gives ratings which you don’t agree with.

I mean in a way it would be a performance test, but performance test is already used in a technical context in testing and means how fast the system is able to process under a certain workload:

In software engineering, performance testing is in general, a testing
practice performed to determine how a system performs in terms of
responsiveness and stability under a particular workload

Calling it a quality test, doesn’t sound too right either? Usability test somewhat?

Is there already an official term for this kind of testing? If not, what would be the best way to call this kind of testing?

I will answer this purely based on the example you put, because rating of books is quite opinion based. I will also assume you being the end user/customer.
So – assuming your proposed system already rates books, but you’re just not agreeing with the result it’s putting out, I’d say this is more User Acceptance Test, than it is any other test.
The system is “working”, but you’re testing to see if your user (you) accept the result. Regardless of it being correct or not (just because you – the end user/customer – think the rating is wrong, doesn’t mean the program calculated wrong (a bug), you just can’t accept it’s outcome because your opinion is different, and thus – won’t accept the program, returning it to the programmer(s) for further development)

Taken from the wikipedia page on acceptance tests:

In software testing the ISTQB defines acceptance as: formal testing
with respect to user needs, requirements, and business processes
conducted to determine whether a system satisfies the acceptance
criteria and to enable the user, customers or other authorized entity
to determine whether or not to accept the system

https://en.wikipedia.org/wiki/Acceptance_testing#User_acceptance_testing

And taken from the wikipedia page on software testing:

Acceptance testing performed by the customer, often in their lab
environment on their own hardware, is known as user acceptance testing
(UAT). Acceptance testing may be performed as part of the hand-off
process between any two phases of development

https://en.wikipedia.org/wiki/Software_testing#Acceptance_testing

1

I would class this as an exploratory test. It helps you to learn more about what the rating system does without coming to a definitive green or red condition (you mention ‘improve quality sometime later’).

When your ratings (with or without some tolerance) become a requirement they could be classed as acceptance tests.

Performance test is about the speed aspect of performance, not about the compliance aspect.

As for your example of romantic books, somewhere it must be defined how the program is to reach the rating, in an algorithm.

That algorithm should be tested as a unit test. A number of texts that manually have been rated is passed through and the results are compared to the expected values.

You really do not want to wait until user acceptance tests to discover that your algorithm does not work. And if you do, you really need unit tests to check that any changes to fit the added tests covering the errors found in the user acceptance test, does not break the old tests.

1

LEAVE A COMMENT