Friday, November 24, 2017

Nhật ký làm Trainer - Tập 1

Nhật ký làm Trainer - Tập 1
Ngày Black Friday (24/11/2017), Sài Gòn, các tuyến đường không còn lối đi, người người, nhà nhà tham gia mua hàng giá rẻ cả online và offline. Và tôi nghĩ rằng không chỉ ở sài gòn, mà tất cả các thành phố lớn ở Việt Nam và cả nước ngoài, họ chờ mong những ngày như thế này được diễn ra.
Thế nhưng, có 2 bạn trẻ, tham gia trong dòng người đông đúc đó, trong buổi chiều mưa gió, sắm chớp ầm ầm diễn ra. Họ vội vã thực hiện cho một công việc khác, không phải lao nhanh đến các trung tâm mua sắm, mà họ đến chổ hẹn, ĐHHoaSen, để tham gia chia sẽ về chủ đề:
- Kiểm thử hiệu năng phong cách Agile
- NodeJS & Angular, bạn chọn phong cách nào?
Và chân thành cảm ơn các bạn đã tham gia cùng chúng tôi, với 2 chủ đề như trên.

Sunday, November 12, 2017

Overview Of Waterfall Model in Testing

I. Overview
Nowadays, the software that people create is more complex. Algorithms are increasingly difficult to build and manage. Therefore, software managers are constantly learning and researching to create better software development methods. Compared to the past, people have been constantly creating cheaper, faster computers and more powerful programming languages. The greater theoretical knowledge requires support tools and software.

On the other hand, to develop and launch such software, many models have been applied such as waterfall model, V-model, iterative model, spiral model, agile model… Along with the software development process is the testing process. Testing is performed as soon as possible in the software development process in order to find bugs within the software that could be potential harmful problems inside software. This helps to perfect the software applications to meet user requirements.
One of the most widely used models in companies around the world is the Agile model, which is considered to be an improvement over older model Waterfall. We will learn about these two models to understand the differences between them.

II. Overview of software testing using Waterfall
Waterfall model is a development process that looks like a flow with phases in strict order without turning or jumping phase. If any errors occur before the test period, it will have to be re-started.


 Software testing includes:
a. Figure out and analyze requirements  
The first step in software testing process is to review customer requirements that must be thoroughly analyzed and tested. In case of any incomprehensible or unreasonable, report to the analysis team. This phase helps us to answer the question: What will be tested?
b. Prepare strategies and plans
After figuring out the customer requirements, the next step is to set up a test strategy and plan. We need to determine the scope of the test in this step:
  • ·         The key functions of the project.
  • ·         Non-functional requirements.
  • ·         The approach and identification of test activities can be either manual or automated, or a combination of both.
  • ·         References
  • ·         Estimate the cost of testing and building, reasonable time division.
  • ·         Division of human resources for testing.
  • ·         ......
Regardless of the project, we need to have a strategy and plan. It will be difficult to implement without a clear strategy and plan.

c. Design & Setup environment
The next step after the planning is to design them. This stage is very important, it ensures all test situations "cover" all the testing requirements. Designing a test is not just a one-time. It will be repaired, updated, added or subtracted throughout the software testing period, at any time with any required change, or notice that it needs to be repaired or added after analysis.
Writing test cases from functional and non-functional requirements of the software consists of three cases: True, Fail and unidentified results (case incurred, not in the specification document). Testcase should cover all aspects of testing for each software requirement. Write test scripts if you use the tool to perform automation tests for interfaces, functional tests.
Preparing the environment is the foundation for software testing to include the operating systems (Win 7, Win 8, IOS, ...), browsers (Opera, IE, ...), devices (Mobile, tablet , destop, ...)

d. Perform: 
After designing, we run the test in a variety of ways         
  • Run the test for each test case / test script
  • ·         Perform special ad-hoc testing
  • ·         Review bugs that have been fixed.
  • ·         The tester should report the bugs to the developer during the implementation and track them until the bugs are fixed.
  • ·         And during the implementation, there may be some additional missing cases (if any).
e. Report and summarize
After the software is tested, we make a report.
  • ·         Create bug reports.
  • ·         Evaluate test results, list the changes made during the test.
  • ·         Make a summary of the test performance.
  • ·         Determine whether the software reachs the criteria for success or be completed...

b4usolution group