10 nguyên tắc cơ bản cho người mới bắt đầu học automation testing
[quote] Automation testing từ khóa này lúc nào mình cũng search search research bao là nhiêu. tìm hiểu về nó thì có rất nhiều tài liệu nhưng sẽ rất mung lung không biết bắt đầu từ đâu. Bởi vậy, không biết thì hỏi muốn giỏi thì search google nhiều =)))
Dưới đây, mình cũng tìm đọc và chia sẻ cho bạn nào muốn tìm hiểu về auto testing. Bạn nào đang tìm hiểu hoặc có kinh nghiệm chia sẻ cùng mình nha. :) [/quote]
Testing là một một nhiệm vụ khó khăn và để tự động hóa đòi hỏi người kiểm thử
có sự hiểu biết sâu sắc về quá trình và thực hành liên tục, tìm ra cho mình một tool hoặc ngôn ngữ
basic để hiểu và viết testscript bằng java hoặc python (còn nhiều ngôn ngữ khác áp dụng nếu như bạn nào rành về C# cũng OK tuốt =D)
Bạn nào mới bắt đầu về java thì có thể lên mạng search learning java basic hoặc học theo bài cơ bản nhất theo link này: http://workbench.cadenhead.org/book/java-8-24-hours/
Nhưng trước hết bạn hiểu và nắm rõ được 10 nguyên tắc cơ bản dưới đây:
Nguyên tắc 1: Đọc và học/ hiểu cơ bản về nó (automation testing)
ngay cả những người phát triển có tay nghề cũng phải rà soát
lại kiến thức của mình theo thời gian, học tập là luôn cập nhật trau dồi kiến thức thường xuyên
Tự động hóa là gì? tự đặt câu hỏi và tự tìm hiểu để trả lời thì bạn sẽ nhớ lâu hơn, hoặc có thể tham khảo của những người đi trước. tự động hóa một đánh giá đơn thuần của các bước chương trình phải thực hiện, bạn tự viết một hướng dẫn chi tiết.
Nguyên tắc 2: Kế hoạch chuẩn bị để đáp ứng các dự án tự động
Thực hành là cách duy nhất để có được kiến thức hợp lệ.
Lấy bất kỳ công cụ kiểm tra mã nguồn mở có sẵn, cài đặt và học cách sử dụng nó trong thời gian rảnh của bạn. Các sandbox (hộp kiểm thử hiện đại) có thể làm được bất cứ điều gì, thậm chí MS Office của bạn hoặc công cụ Calculator ( thực hiện demo trươc1). Chỉ cần có được công cụ và bắt đầu, Khi bạn đạt được sự hiểu biết và kinh nghiệm có thể sẵn sàng đối mặt với các dự án thực tế khi cần thiết.
Nguyên tắc 3: Các khái niệm/ định nghĩa cơ bản là giống nhau. Hãy khám phá chúng!
Ngoài đặc thù là khác nhau nhưng tất cả các ngôn ngữ cơ bản hoạt động
cùng một khái niệm như các biến, tham số, các chức năng, các
loại dữ liệu khác nhau, vòng lặp có điều kiện hoặc báo cáo, mảng, chỉ khác nhau ở công nghệ của mỗi ngôn ngữ. Sau khi có những hiểu và ghi nhớ, bạn sẽ có thể áp dụng kiến
thức này để coding bất kỳ ngôn ngữ nào bạn học. (java ? python..)
Nguyên tắc 4: Không dừng lại khi chương trình đầu tiên bị FAIL
Khi mà thực hành viết 1 chương trình testscript nào đó bị lỗi bạn đừng vội nản lòng.
Có một câu ngạn ngữ Nga tuyệt vời: "the first pancake is a mess. It means first try on anything will most likely fail, but all the next ones will be better, as you will gain experience in the process.
No matter how good you are on theory, first practice likely will be disappointing. So just go on."
Nguyên tắc 5: Nhìn vào code như một thủ tục chứ không phải là một magic :3
Bất cứ khi nào mới bắt đầu nhìn vào code, nó có vẻ gần như khá phức tạp.
Tuy nhiên, sau khi thực hiện một số coding, bạn sẽ có thể nhận ra mô hình và quy trình cùng một lúc làm cho việc đọc mã dễ dàng hơn nhiều. Bạn sẽ thấy nó chỉ đơn thuần là một hướng dẫn cho các chương trình.
Nguyên tắc 6: Khám phá tool
Mình nói rồi đấy. Bất cứ một người làm kiểm thử nào nếu không muốn mình đơn thuần là 1 manual testing hay chỉ test function dựa trên spec document thì hãy tìm cho mình một tool thích hợp nhất để tìm hiểu. Cách tốt nhất để làm quen với một công cụ thì hãy khám phá các tính năng của nó từ đơn giản nhất cho đến phức tạp. càng hiểu sâu bạn càng thích thú với nó. tool rất nhiều bạn có thể search tool for testing là ra cả đống =D
Nguyên tắc 7: Search for help in help section
Trong quá trình khám phá tìm hiểu bạn gặp một số lỗi thì hãy đọc phần Help của công cụ. Nó là một nguồn tuyệt vời và hướng dẫn trên mọi khía cạnh của việc sử dụng của công cụ. Khám phá kỹ để làm chủ công cụ hoàn hảo.
Nguyên tắc 8: Thực hành nhiều, nhiều hơn có thể
Hãy thử nghiệm nhiều lần như một quá trình xác nhận. Nó cho phép bạn để kết luận nếu đoạn code này là chức năng hay không. Kiểm tra nhiều lần và xem xét nó có cho ra kết quả mong muốn hay không? lặp lại nhiều lần như thế để xác nhận
Nguyên tắc 9: Cải tiến cách/ phương pháp làm việc của bạn
Tất cả những việc làm tốt có thể được thực hiện tốt hơn. Rà soát, phấn đấu để cải thiện dự án của bạn là một cách để cải thiện kỹ năng của bạn và hướng bạn lên một tầm cao mới.
Nguyên tắc 10: Không phải lúc nào cũng cần đến tự động
Automated test là phương pháp hữu dụng và ấn tượng, thường được
sử dụng để giúp tiến hành test một cách hiệu quả. Tuy nhiên, automated test lại không phù hợp với tất cả các dự án. Nguyên nhân là do thiếu thời gian và thiếu kĩ thuật. Mất nhiều thời gian để tạo Automated test. Thời gian này phụ thuộc vào các tester. Để tạo automated test thì mất thời gian gấp 3-10 lần so với việc chạy test bằng tay. Vì vậy, automated test sẽ chỉ được chạy tương đương với lượng thời gian gấp 3-10 lần. bạn tìm hiểu và nắm rõ 2 trường hợp sau:
1. Automated test sẽ phù hợp cho những mục đích:
- Thực hiện test hồi quy cho 1 hệ thống ổn định chạy trên 1 cơ sở thường xuyên.
- Việc tạo dữ liệu xử lý nhanh trong các hệ thống test có cơ sở dữ liệu căn cứ trên 1 cơ sở thường xuyên.
2. Automated test KHÔNG phù hợp cho những mục đích sau:
- Thực hiện test chức năng mới – Việc này nên được làm bằng tay trước khi tạo automated test.
- Những hệ thống test hồi quy sẽ mang lại sự thay đổi giao diện người sử dụng quan trọng. Sự thay đổi lớn đối với giao diện người sử dụng cần nhiều sự bảo dưỡng duy trì cho automated test.
Khi tiến hành tự động hóa test, bạn nên chỉ tự động hóa các test mà nhóm của bạn có thể duy trì được dễ dàng. Nếu có vài test khó có thể duy trì thì phải cân nhắc để giảm các test đó.
Nói tóm lại, bạn hãy nhớ rằng automated test sẽ không bao giờ tìm ra được nhiều bug như 1 người tester tìm ra theo cùng các bước. Đó là bởi vì người tester có thể bắt được nhiều thứ bằng con mắt của mình.
Những quy tắc là không bắt buộc, nhưng chúng tương đối đơn giản hóa và rõ ràng. Sau đó sẽ giúp bạn cải thiện kỹ năng và trở thành một người kiểm thử tốt hơn.
Nếu bạn có nhận xét hay ý kiến thêm về vấn đề nào trong 10 nguyên tắc trên
hãy feedback cho mình qua mail thuyph910@gmail.com Thanks all.