Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Define functional and scale tests for Retrieval library #52

Open
rstarmer opened this issue Jun 30, 2023 · 1 comment
Open

Define functional and scale tests for Retrieval library #52

rstarmer opened this issue Jun 30, 2023 · 1 comment

Comments

@rstarmer
Copy link
Member

As a software developer, I would like to see tests both for functionality and for scale for the retrieval engine so that I can have confidence in both leveraging the library and ensuring I can achieve my scale goals.

Acceptance:
[ ] inputs and parameters validated
[ ] known input text generates valid knn indexes
[ ] known "prompt" text generates valid responses

@sdake
Copy link
Member

sdake commented Jul 2, 2023

The Definition of Done must be met for any user story. The definition of done for v0 has a requirement of basic unit testing.

My opinion: many engineers have stated these are not pragmatic. Until they see 100% unit test coverage in action.

100% unit test coverage is an assertion of the developer's implementation. If the unit tests cover 100% of the source tree, then functional testing is not needed. Scale testing is, although, at this time, scale testing is not that essential.

My opinion is that the most affordable way to achieve success is 100% unit test coverage. It's hard to start a new repo with 100% unit test coverage, although my opinion is that 100% unit test coverage should always take priority over any e2e testing. There are so many permutations in a running software system, that successfully passing functional testing is not a strong quality signal and is poorly correlated.

Checking inputs/outputs to APIs, that may be something to add to a "v1 definition of done ? The final two AC make a lot of sense and are not strictly functional tests, although they are clearly not unit tests ;-)

Thank you,
-steve

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants