I want to learn about:
What could be the test cases to ensure the test coverage while any proprietary software is being installed using a license key. I wish to avoid (a) re-installation (b) multiple instances of installation - using the same license key.
|
|
|||||
|
|
I am assuming that you want to test the installer code that verifies the license key. To test that there are a few things that would be required. a) THOROUGH understanding of the validation routines involved. As these systems are designed to enforce copy protection, they are usually very, very complex and maths heavy. If you want to understand how to test it, you need to understand the implementation. b) Unit test thoroughly, in isolation. Take the key verification code, isolate it and using the knowledge from step a), unit test it to death. You would need to use fuzzing attacks as well. c) Integrate and test the install Once you are happy with the thoroughness of your unit tests, integrate it and then test a few scenarios. I would create a semi-autmated solution that involves restoring a virtual machine, then trying to install. Then repeat, and use a lot of machines to scale-out your execution. d) Test negative first, then positive One way to cheat the number of re-installs would be to test all your negative scenarios first, then test your positive ones, as you, in theory, shouldn't need to re-install as your install would have failed. But personally, I wouldn't do this I would do (c) instead. |
|||
|
|
|
These are few test case, that can help you:
Generic Installation Test Cases
|
||||
|
|
|
I don't know a way to ensure much in the way of test coverage without re-installation. I guess you could install once and pretend that's good enough. Why do you wish to avoid re-installation and multiple instances? |
|||
|
|
If it is an internet connected application, having a ssl cert validation and using its private key to be used as a salt for using license key could be a good idea. SSL certs give you a very promising theft-prevention towards license. Also, using hardware tokens could be a good idea. So, even if you copy the license key to your computer, your hardware key would be really very hard to replicate. A link worth a read: http://discuss.joelonsoftware.com/default.asp?biz.5.82298.34 |
|||
|
|