Assignment 1 – A Report of Black Box Testing (30 marks) Due Date: 8:00 pm, Wednesday, August 12, 2020 8:00pm, Monday, August 24, 2020 Submission: a report file in PDF format prepared according to the following objectives and problem statement. A ZIP file containing all testing source codes with comments. Objectives 1. To understand the critical issues in software testing, focusing on black box testing. (You can focus on black-box testing techniques to design and execute your test cases in Assignment 1. Then, in Assignment 3, you can focus on white-box testing techniques and integration testing techniques to conduct an overall evaluation of software quality.) 2. To demonstrate the ability to research and apply proper techniques to detect bugs. 3. To write a proper essay for a specific topic and presenting/arguing the findings. Problem Statement Selenium, JUnit, TestNG and Yasca etc, are automation testing frameworks widely used by the industry. You are required to demonstrate your ability of correctly identifying which testing method along with testing tool(s) to use to perform a test on a selected program. You have been given a program along with this assignment question as an example of the programs you can use for purpose of assignments of this unit. The taxMe program mimics some basic Australian taxation rules by calculating the taxable annual income based on four input variables including salary, medicareLevy, TBRLevy(Temporary budget repair levy), and Lilevy (Lowincome levy). The value of medicareLevy, TBRLevy and Lilevy can be “True” or “False”. The output of the program will be the amount of the payable tax and the income after tax. It calculates the payable tax using the rules below: 1. If your annual income is less than $18,200, you do not need to pay any tax. 2. If your income is between $18,201 and $37,000, you have to pay 19% for the amount that exceeds the tax-free threshold, which is $18,200. 3. If your income is between $37,001 and $80,000, you have to pay $3572 plus 32.5% for the amount that exceeds $37,001. 4. If your income is between $80,001 and $180,000, you have to pay $17,547 plus 37% for the amount that exceeds $80,001. 5. If your income is more than $180,000, you have to pay $54,547 plus 45% for the amount that exceeds $180,000. 6. There are levies applicable to each stage of tax, each will make subtle changes to your payable tax: medicareLevy will introduce a 2% increase on the tax. Lilevy will offset the first taxable tier to $20,543 instead of $18,200. TBRlevy will introduce a further 2% increase, however, it can only be applied to the top tier of income earners. SIT707 – Software Quality and Testing 2020T2 Assignment 1 2 Please note that provided program is just an example of what you can use. It is your choice to use this program or any other program with the same level of complexity including a web application that is freely available. If it is a web application please include the URL in the report. If you use a different program that is not accessible to the teaching staff via the Internet, please only use an open source program and include its source repository link in the report. Also, note that you need to use the same program you choose in this assignment for your assignment 3. Upon satisfactory completion of this assignment, you will be able to conduct basic level research in software engineering, analyse gathered information, and communicate your findings. To demonstrate your achievement of these goals, you must write a 2,000-word report. Your report should consist of the following chapters: 1. A proper title which matches the contents of your report. 2. Your name and Deakin student number in the author line. 3. An executive summary which summarises your findings. (You may need hints on writing good executive summaries from http://unilearning.uow.edu.au/report/4bi1.html.) 4. An introduction chapter which explains your chosen program, test methods, test tools and the organization of the rest of your report. 5. An evaluation and justification chapter of your chosen testing method and tool(s) based on the program. 6. A test case chapter which list your test cases and explains why you would use each of them. 7. A test demonstration chapter which consists of fully explained screenshots when you use selected tools to conduct the testing tasks. 8. A bug reporting solution chapter which outlines the identified bugs, your proposal to fix the bugs and your justifications on the priorities of bug fixes. 9. A conclusions chapter which summarises major findings of the testing and indicates future testing activities which should be conducted for the selected program. 10. A bibliography list of all cited papers and other resources. IEEE and Harvard are preferred.