The higher we go in levels of testing, such as web testing, the more we start to think about the frameworks and environment our application runs in. Our web application is responsive; how do we test for that? If we use Angular or React, how do we test it? Or, if we use a non-relational database like Mongo, how do we test it?
Testing these specific technologies is far beyond the scop. My suggestion is that you visit those communities and explore their state-of-the-art tools and bodies of knowledge. All the test case engineering techniques you learn will apply to your software, regardless of the technology.
System tests in software other than web applications
I used web applications to exemplify system tests because I have a lot of experience with them. But the idea of system testing can be applied to any type of software you develop. If your software is a library or framework, your system tests will exercise the entire library as the clients would. If your software is a mobile application, your system tests will exercise the mobile app as the clients would.
The best practices I discussed still apply. Engineering system tests will be harder than engineering unit tests, and you may need some infrastructure code (like the POs we created) to make you more productive. There are probably also specific best practices for your type of software—be sure to do some research.
Leave a Reply