I would turn that question into a community wiki, as there is no best or final answer here.
–
dzieciouJan 5 '14 at 7:46

2

I'm seeing your question as a way to verify not only whether a candidate can invent test cases, but also whether she can plan the test with time and risks in mind, right? I thought so because you asked "When would you plan to finish testing this enhancement?". I also thought this is not about committing for some particular time, but rather an invitation for a discussion to find the right trade-off between two sides: (a) constraints from a project (time) and system (architecture, etc.) and (b) test coverage we want to achieve with proposed technique and risks we're going to accept.
–
dzieciouJan 5 '14 at 8:21

@dzieciou, yes, in both cases, you’ve correctly described what I’ve tried to say. A case study, for me, is an invitation for discussion. The case might have an answer when it was created, but it should be not the only answer. Taking the risks into account might be not so important for big projects with 30 testers, lots of devs and management, but it can be important on small projects with 2 - 3 testers.
–
Dmytro ZhariiJan 5 '14 at 11:37

1

I have always received answers that were better indicators of a person's abilities by asking questions in terms of "Tell me about a time when X happened, how did you respond? What did you learn? What would you do differently?" rather than "What would you do if X happened" Getting them to tell you about an actual occurrence instead of making up a response to a situation will almost always give you better insight into what will happen in similar situations in the future.
–
Sam WoodsJan 8 '14 at 21:13

1 Answer
1

You've been given a task to test the isPalindrom(String text) : boolean function. What are test cases you would propose and why?
Now implement the function under test yourself. Are you seeing some more test cases to
verify?

You have a function that takes coordinates of two rectangles and tells whether they are overlapping. What test cases can you think of? How would you group them?

Those are pretty abstract questions, say math-related, though the first one can reveal practical problems as well, e.g., related to character encoding with multiple bytes (UTF-8 vs UTF-16). We still wanted to have something more like your original case, but related more to the backend testing and verifying ability to test on different levels/tiers of the system.

A tool that migrates data from database A to B has been developed. The tool will be used to migrate all production data from version 1.0 of our app (operating on A) to version 2.0, currently being developed (operating on B). The schema may differ between each other. How are you going to make sure the application is working after migration? Provide your test strategy and sample test cases.

I took the idea for this question from my own experience: I gathered requirements, developed and tested such a tool, and even asked how other would test it: How to test data migration procedure?.