This post is based on request from reader regarding the test cases for telephone billing system asked in the interview. Considering the telecom companies in the IT sector, this post will definitely help freshers to get understanding of how to write test cases for such application.
Telecom billing system are quite complex and each telecom operator maintains different system for customer records. I had a chance to check out Vodafone and BSNL billing system, I have observed the workflow of the software used. So using that workflow, I am going to write some of the sample test cases for the billing system.
Customer service centers have three different modes of payment systems – Self service kiosk, Cash transaction on counter and card transaction Each of these payment methods will change the structure of the billing system. For the sake of simplicity, let’s assume we are using the cash transaction on service counter.
Here a customer service staff member will take phone number and bill amount from you. He/She will add your number in billing system and generate customer record. This record system has an option to see current bill, past paid and unpaid bills, mode of previous transactions (cash or card), late fee checkbox, service request option and statements. It also generates the print after the successful payment from the client. The billing system then updates the core server to change the bill status from unpaid to paid.
Check out this old billing system that was in use prior to GUI based software.
Due to the simplicity in the old systems, there was less room for error when it comes to choosing the menu options. However, the errors were introduced as there were no input validations offered by external libraries to developers.
That being said, here are some of the test cases for the billing system of telecom operator.
- Check the telephone number of the customer and see if it exists as current customer under telecom operator.
- Check if the number is working or not.
- Check if the number entered is valid 10 digit number.
- Check if the number is not blocked due to reasons.
- Check if the number has active billing cycle.
- Check if the number has unpaid billing history if exist, shown on screen.
- Check if the numbers previous billing amount is paid.
- Check if the system allows statement generation as per customer requirement.
- Check if the system has recorded number of calls accurately.
- Check if the plan selected by the customer reflects in billing system.
- Check if the plan upgraded is selected by customer data in the system.
- Check if the plan downgraded is selected by is billing system.
- Check if the value added services are enabled or disabled.
- Check if the total amount is accurate and mapped to the services offered.
- Check if the tariff plan is properly calculated for billing cycle.
- Check if the number of calls are valid by matching them to customer records.
- Check if the prepay system has accepted additional money for future billing.
- Verify if the prepay balance is used in the current billing.
- Verify if the floating point balance is carried forward into the next bill.
- Verify if the bill is paid by customer and it reflects in the system.
- Verify if the customer has chosen card or cash transaction.
- Verify if the card transaction has been successful in payment terminal.
These are some of the common test cases regardless of the telecom operator. The test cases will increase once you get your hands on the system workflow of the respective telecom billing system. The option for service kiosk and card payment will increase the number of test cases that you need to cover. Each field will have it’s validation check. Depending on whether it is web based or VB based application, you’ll find the validation checks different in each application.
Now you can format your own test case document by using these fields – test case id, description, test data, expected result, actual result, pass or fail remark, bug description. This should help you form a test case document for verifying the manual testing defects in the application.
I hope you have found this post useful for your manual testing practices. Feel free to let me know if you find these posts helpful. I’ll definitely help you with more test cases in the future. 🙂