Test Report For Cloud-Based Phonebook Software In Agile Environment

Purpose of Assignment

Software testing is an important process in software development. This is because it helps bring up the deformities, defects and mistakes that were made during development. Also, it ensures the customer’s dependability and assures of their requirement fulfillment. Testing improves and guarantees quality on the software

Save Time On Research and Writing
Hire a Pro to Write You a 100% Plagiarism-Free Paper.
Get My Paper

One should test a software when having a specific goal to achieve, one that satisfies the needs of the user and also improve performance and effectiveness. This means failures should be absent at all times if not minimum after testing of a software occurs.

This document is the test report of a phonebook software that was deployed in a cloud service. Our team has written this report which provides a deeper knowledge and understanding of black box testing in an agile environment.

We use a test software management tool called TestRail in order to achieve testing. This is a modern management tool that generates reports that display statistics, charts and visualize the data. With the tool, the reports generated could be private or shared so that all other users in the project can view.

The phonebook software in discussion is open to a number of users and is synchronized with the user’s phonebook so that information added is synchronized both in the website and the phonebook. The user can do different of things in the software, for example they can create an account in the website, insert multiple sheets to the phonebook, every sheet can include information up to 10000 people, log in to the website using their credentials (username and password), share the sheet with their friend by using the email of their friend where that email address is used to log on to the website, provides write access to their friend then the friend can be able to modify any contact information, import information from a CSV (Comma Separated Values) file and vice versa. This information is going to be saved to a certain selected sheet, and finally the user can also export information to a sheet in a CSV file.

Save Time On Research and Writing
Hire a Pro to Write You a 100% Plagiarism-Free Paper.
Get My Paper

We found that there are bugs in every other software including our phonebook software.  Developers encounter bugs and hence testing helps to identify the bugs so that they can be fixed before being deployed to user. However there are risks of deploying the software in a cloud service because the benefits from the agility and scalability that cloud services offer, there are issues of security and privacy of personal data.

Features of the Software

Agile testing environment in our case, has proved to be a productive and best practice since testers and developers work together at the same time, testing is not a separate phase and occurs concurrently with development. However, if these tests to the software would not have been done, there could be poor results in the deployment process and a software that is not functional.

When doing tests to a software, it involves processes that revolve around creating test plans, test cases, adding sections and sub-sections, adding results, running the tests and integration among others The processes are long but with the aid of testing tools such as TestRails which is integrated with JIRA. (Loveland, 2015)The other thing to consider is the environment and the methodology that one uses during testing. For our case, agile environment proved to be the best since every individual in the team contributes to the testing and this is efficient.

We used TestRail* to write the test cases and scenarios. The modern software management tool has the ability to track and save some of these test cases and then automate them so they can run between iterations. This comes in handy and is a huge boost to agile methodologies, and also helps ensure functionality under pressure (Pohl, 2010). TestRail allowed us as a team to organize and manage milestones and the different projects. Using the test tool, our team leader gives tests to different team members and finally tell when the test will be completed based on the data available.

We used black box testing method to implement the different approaches and techniques of black box testing that are used to find errors and bugs in a software (Loveland, 2015). This type of testing is either direct or indirect to the requirements of software hence it is sometimes known as specification based testing. Our test cases for the nine scenarios as it appears in TestRail are as below:

The test cases which were tested during the testing process, include the following:

  1. Checking whether the software will allow the user to create the account
  2. Checking whether the software can allow sharing of file to so many users
  3. The user should be able to log in after registering on the account
  4. It was also checked if the user can be able to import files on the software
  5. The software was tested to check whether friend can share files through it

The figure below shows how the black box testing method works. It does not involve the technical part. The users do not see the internal part of the software. They only input the requirements and the user gets the desired results and then finally generates the final report.

One advantage that is there with using TestRail is that we can easily integrate it with JIRA plugin. It is an amazing feature because it allows users of the software to easily push bug/ error reports. The users can also check the status of the issues regarding the software and error reports without logging out of the Test Management tool; TestRail (Burman, 2014). It also allows users to work regardless of the methodology they have used because it is a lightweight application.

Importance of Software Testing

Working in an agile environment helped us to encounter huge accomplishment in meeting the quick paced difference in client needs and specifications. This because agile offers an iterative way to deal with the improvement of the software. (Khan, 2012) It also allowed us to detect changes and non-functionalities so that we could improve the software before we deliver it to the market. The agile environment enables groups like ours to break the extensive prerequisites, construct, and test stages down into manageable small portions, at last deploying a working software at a lesser time to its target users.

As shown below, the modern management tool enhanced our testing of the software because it provided the run results and reports which includes graphs and charts (Srinivas N, 2012)

This the sort of testing where the execution of the phonebook software was tried to check the pressure and how the product will interface with different applications. The product was tried on how it tends to be coordinated with others and will make it keep running without introducing bugs to the clients.

Unit testing was done after each module amid the coding procedure of the software. Amid unit testing the software engineer guarantees that upon the fulfillment of each development stage, there are no errors inside the program code. (Pohl, 2010)The principle motivation behind why we did unit testing was to decrease the time wastage since bugs may get collected and will make it hard to test the system.

The client does not need a more profound comprehension of the internal working of the software and only requires some data about its inward functionalities. This is the motivation behind why black box which is also known as discovery testing was favored. Since the product is worked to store the name, address and telephone number of clients to the application and website, it ought to be easy to understand and deal with security and protection of the information. A few test could be performed on the program to mind its usefulness. In the first place, quality affirmation must be made of the program. The desires or the client prerequisites ought to be met without trade off. (Do, 2015) The input from the client will help decide the ease of use of the software. The product is incorporated with different projects and ought to have the capacity to keep running in various platforms with a similar level of responsiveness. The program ought not to have issues when in various working frameworks. 

Test Software Management Tool

We also performed stress testing, load testing, volume testing. By adding 9 test cases, test plans and data for the three types of data for multiple persons which include Name, Phone and Address. We added results and tested if the software works under stress or volume (Luo, 2011).

 We also added multiple users in the test who can add data, delete data, share data by inviting their friends and also import and export the information of their choice as shown below.

Black box testing otherwise known as black box testing has turned out to be of incredible help amid the testing of the product. It did not just aid in checking the execution of the program but also investigated its usefulness as well. For future programming, these testing devices will be utilized by my group. Hence we justify the need to have used the two since they are subsequently the best.

Conclusion

In conclusion, in order to complete a viable software testing, teams or individuals ought to have the capacity to pick an apparatus that is advantageous and present day to help recreate the testing condition. Light-footed condition enables a group to code at the same perform testing. This enables them to settle bugs effortlessly when they emerge. Software testing is a wide zone and ought to be finished with a great deal of astuteness. Web applications are best tried with the Black box security scanners because of their deftness in checking weakness in security in web applications. Its security vulnerabilities must be dealt with to lessen the issue of security and protection concerns. All things considered, the application must experience all the testing from its interface to its compatibility. When testing is done properly, the experience becomes amazing and worth delivering a confident and functional software to the clients.

References

Burman, P. (2014). A comparative study of ordinary cross-validation, v-fold cross-validation and the repeated learning-testing methods. Biometrics, 503-514. Retrieved from https://www. comparative study of repeated/learning resting/ methods.

Do, H., Elbaum, S., & Rothermel, G. (2015). Supporting controlled experimentation with testing techniques: An infrastructure and its potential impact. Empirical Software Engineering, 405-435. Retrieved from, https://dl.acm.org/citation.cfm?id=1089928

 Khan, M. E., & Khan, F. (2012). A comparative study of white box, black box and grey box testing techniques. Int. J. Adv. Compute. Sci. Apple, 3(6). Retrieved from https://thesai.org

Loveland, S., Miller, G., Prewitt, R., & Shannon, M. (2015). Software Testing Techniques: Finding the Defects that Matter. New Delhi: Charles River Media.

Luo, L. (2011). Software testing techniques. Institute for software research international Carnegie Mellon University Pittsburgh, 1-19. Retrieved from, https://www.isri.cmu.edu/

Pohl, K. (2010). Requirements engineering: fundamentals, principles, and techniques. Springer Publishing Company.

Srinivas N, Jagruthi D. (2012) International Journal of Embedded Systems and Applications Black box and white box testing techniques, 9-12. Retrieved from https://airccse.org/journal/ijesa