Tin tức chung

39 câu hỏi phỏng vấn automation test – kiểm thử tự động (phần 1)

30 May 2020

Bộ các câu hỏi phỏng vấn tham khảo khi ứng tuyển automation test – kiểm thử tự động

Câu hỏi phỏng vấn automation test – kiểm thử tự động thường gặp nhất dành cho người mới bắt đầu và ứng viên cấp cao:

Automation test đóng một vai trò rất quan trọng trong toàn bộ vòng đời phát triển phần mềm. Chúng ta cũng nên xem xét thực tế rằng việc học và biết công cụ này chỉ là một ý nghĩa và nó không phải là mục tiêu cuối cùng.

Do đó, bất cứ khi nào chúng tôi đang chuẩn bị cho một cuộc phỏng vấn tester với vai trò automation test, chúng tôi phải xem xét toàn bộ công cụ kiểm thử động, và tập trung vào khuôn khổ và các bước liên quan.

Chúng ta đều biết rằng kiểm thử phần mềm là một phần rất quan trọng trong phát triển phần mềm. Nhưng, với các phương pháp và môi trường phát triển phần mềm đang phát triển nhanh chóng, việc kiểm thử thủ công mọi thứ cho một ứng dụng trong một thời gian giới hạn cùng với các ràng buộc về chi phí trở nên khó khăn.

Do đó, automation test đang phát triển nhanh chóng trên thị trường để tăng tốc độ phát triển. Hướng dẫn này bao gồm các câu hỏi phỏng vấn hàng đầu về automation test.

39 câu hỏi phỏng vấn automation test hàng đầu


phỏng vấn automation test kiểm thử tự động

 

Q1.Tự động là gì?


Trả lời: Tự động là bất kỳ hành động nào có thể làm giảm nỗ lực của con người.

Q2.Automation test là gì?


Trả lời: Quá trình sử dụng các công cụ phần mềm hoặc tập lệnh đặc biệt để thực hiện các tác vụ kiểm thử như nhập dữ liệu, thực hiện các bước kiểm thử và so sánh kết quả, v.v. được gọi là automation test.

Q3.Những kiểm thử nào có thể được dùng trong automation test?


Trả lời:

  • Bộ kiểm thử hồi quy (Regression test)
  • Bộ kiểm thử khói / Sanity (Smoke / Sanity testing)
  • Xây dựng triển khai
  • Kiểm thử tạo dữ liệu (Test data creation)
  • Kiểm thử tự động đằng sau GUI như kiểm thử API và phương thức.

Q4.Khi nào automation test hữu ích?


Trả lời: Automation test rất hữu ích trong các tình huống sau:

a) Kiểm thử hồi quy (Regression testing): Trong trường hợp sửa lỗi hoặc triển khai module mới, tester phải đảm bảo rằng chức năng đã được triển khai hoặc không thay đổi không bị ảnh hưởng. Trong trường hợp này, tester kết thúc chạy test case hồi quy nhiều lần.

Ví dụ: Sau mỗi yêu cầu thay đổi hoặc sửa lỗi, sau mỗi lần lặp trong trường hợp tiếp cận phát triển gia tăng, v.v.

b) Kiểm thử phi chức năng: Kiểm thử các khía cạnh phi chức năng của một ứng dụng.

Ví dụ:  kiểm thử tải (load testing) hoặc kiểm thử hiệu suất (performance testing), vv rất khó cho con người theo dõi và phân tích.

c) Kiểm thử tính toán phức tạp: các test scenario dễ bị lỗi khi kiểm thử thủ công.

d) Thực hiện lặp lại các kiểm thử giống nhau: Đôi khi, tester phải chạy cùng một bộ test case cho một bộ dữ liệu khác nhau hoặc sau mỗi lần phát hành bản dựng hoặc trên nhiều phần cứng, phần mềm hoặc kết hợp cả hai.

Kiểm thửu tự động các test case trong các tình huống trên giúp đạt được tốc độ kiểm thử và giảm thiểu lỗi của con người.

Q5. Làm thế nào để bạn xác định các test case phù hợp với automation test?


Trả lời: Xác định các test case thích hợp cho automation test là bước quan trọng nhất đối với tự động hóa.

Q6. Bạn có sử dụng 100% automation test không?


Trả lời: Automation test 100% sẽ khó đạt được vì sẽ có nhiều khía cạnh test case hiếm. Kiểm thử tự động các trường hợp không được thực thi thường sẽ không thêm giá trị cho bộ kiểm thử tự động.

Q7. Làm thế nào để quyết định công cụ mà người ta nên sử dụng để automation test trong các dự án của họ?


Trả lời: Để xác định công cụ automation test trong dự án của bạn:

a) Hiểu kỹ yêu cầu dự án của bạn và xác định các test scenario mà bạn muốn tự động.

b) Tìm kiếm danh sách các công cụ hỗ trợ các yêu cầu của dự án của bạn.

c) Xác định ngân sách của bạn cho công cụ automation test. Chọn các công cụ trong ngân sách của bạn.

d) Xác định nếu bạn đã có tài nguyên lành nghề cho các công cụ. Nếu bạn không có tài nguyên kỹ năng cần thiết thì hãy xác định chi phí đào tạo các tài nguyên hiện có hoặc thuê tài nguyên mới.

e) Bây giờ so sánh từng công cụ cho các tiêu chí chính như:

  • Làm thế nào dễ dàng để phát triển và duy trì các tập lệnh cho công cụ?
  • Một người không có kỹ thuật cũng có thể thực hiện các test case?
  • Công cụ có hỗ trợ các loại nền tảng khác nhau như web, di động, máy tính để bàn, vv dựa trên yêu cầu dự án của bạn không?
  • Công cụ này có chức năng báo cáo kiểm thử không? Nếu không, nó có dễ dàng cấu hình cho công cụ?
  • Công cụ hỗ trợ trình duyệt chéo cho các ứng dụng dựa trên web như thế nào?
  • Công cụ này có thể hỗ trợ bao nhiêu loại kiểm thử khác nhau?
  • Công cụ hỗ trợ bao nhiêu ngôn ngữ?

f) Khi bạn đã so sánh các công cụ, hãy chọn công cụ nằm trong ngân sách của bạn và hỗ trợ các yêu cầu dự án của bạn và cung cấp cho bạn nhiều lợi thế hơn dựa trên các tiêu chí chính được đề cập ở trên.

Q8. Hiện tại dự án chưa có automation test, nhưng bây giờ tôi muốn thực hiện automation test, các bước của tôi sẽ là gì?


Trả lời:

  • Đầu tiên, xác định loại kiểm thử / test case mà bạn muốn kiểm thử tự động.
  • Xác định công cụ
  • Thiết kế framework
  • Tạo tập tin tiện ích và tập tin môi trường.
  • Bắt đầu viết test script (kịch bản kiểm thử)
  • Xác định và làm việc trên báo cáo.
  • Phân bổ thời gian để tăng cường và duy trì các tập lệnh.

Các bước cần thiết để có được automation test cho một dự án bao gồm:

  • Hiểu những lợi thế và bất lợi của automation test và xác định các test case phù hợp với tự động hóa.
  • Chọn công cụ automation test phù hợp nhất để tự động hóa các kịch bản đã xác định
  • Tìm chuyên gia công cụ để giúp thiết lập công cụ và môi trường cần thiết để thực hiện các test case bằng công cụ đó.
  • Huấn luyện nhóm để họ có thể viết các tập lệnh bằng ngôn ngữ lập trình mà công cụ hỗ trợ.
  • Tạo framework kiểm thử hoặc xác định framework đã có sẵn đáp ứng yêu cầu của bạn.
  • Viết kế hoạch thực hiện cho HĐH, trình duyệt, thiết bị di động, v.v.
  • Viết kịch bản lập trình cho các test case thủ công để chuyển đổi chúng thành các test case tự động.
  • Báo cáo trạng thái test case bằng cách sử dụng tính năng báo cáo của công cụ.
  • Duy trì các tập lệnh cho các thay đổi liên tục hoặc các tính năng mới.

Q9. Làm thế nào để bạn quyết định công cụ nào bạn phải sử dụng?


Trả lời: Việc kết luận công cụ nào phù hợp nhất cho dự án đòi hỏi nhiều động não và thảo luận.

Q10. Khi bạn xác định công cụ, bước tiếp theo của bạn là gì?


Trả lời: Một khi đã xác định được công cụ, bước tiếp theo của sẽ là thiết kế framework.

Q11. Framework là gì?


Trả lời: Framework là một tập hợp cấu trúc của toàn bộ bộ kiểm thử tự động. Nó cũng là một hướng dẫn, mà nếu tuân theo có thể dẫn đến một cấu trúc dễ bảo trì và nâng cao.

Những hướng dẫn này bao gồm:

  • Tiêu chuẩn mã hóa
  • Xử lý dữ liệu kiểm thử
  • Duy trì và xử lý các phần tử (kho đối tượng trong QTP)
  • Xử lý tệp môi trường và tệp thuộc tính
  • Báo cáo dữ liệu
  • Xử lý nhật ký

Q12. các thuộc tính của một framework tốt là gì?


Trả lời: Các đặc điểm bao gồm:

  • Module: Framework nên thích ứng với sự thay đổi. Tester có thể sửa đổi các tập lệnh theo môi trường hoặc thông tin đăng nhập thay đổi.
  • Tái sử dụng: Các phương thức hoặc tiện ích thường được sử dụng phải được viết trong một tệp chung có thể truy cập được đối với tất cả các tập lệnh.
  • Nhất quán: Bộ phần mềm phải được viết theo định dạng nhất quán bằng cách tuân theo tất cả các thực hành mã hóa được chấp nhận.
  • Độc lập: Các kịch bản nên được viết theo cách mà chúng độc lập với nhau. Trong trường hợp một kiểm thử thất bại, nó không nên giữ lại các test case còn lại (trừ khi đó là trang đăng nhập)
  • Logger: Thật tốt khi thực hiện tính năng ghi nhật ký trong framework. Điều này sẽ giúp ích trong trường hợp các tập lệnh của chúng tôi chạy trong nhiều giờ hơn (chế độ hàng đêm), nếu tập lệnh thất bại tại bất kỳ thời điểm nào, có tệp nhật ký sẽ giúp chúng tôi phát hiện vị trí cùng với loại lỗi.
  • Báo cáo: Thật tốt khi có tính năng báo cáo tự động được nhúng vào framework. Khi kịch bản được hoàn thành, chúng tôi có thể có kết quả và báo cáo được gửi qua email.
  • Tích hợp: Framework cho automation test phải dễ tích hợp với các ứng dụng khác như tích hợp liên tục hoặc kích hoạt tập lệnh tự động ngay khi bản dựng được triển khai.

Q13. Bạn có thể làm mà không có framework?


Trả lời: Framework là hướng dẫn và không phải là quy tắc bắt buộc, vì vậy tester hoàn toàn có thể làm mà không cần chúng, nhưng nếu bạn tạo và tuân theo nó, việc tăng cường và duy trì sẽ dễ thực hiện.

Q.14. Các loại khác nhau của công cụ automation test mà bạn biết là gì?


Trả lời: Công cụ mã nguồn mở như Selenium, JMeter, v.v.

Các công cụ trả phí như QTP, Load Runner, Ranorex, RFT và Rational Robot.

Q.15 Cấu trúc của một framework là gì?


Trả lời: Thông thường cấu trúc nên có - (Nó sẽ khác với dự án)

  • Một thư mục “src” (source) có các kịch bản kiểm thử (test script) thực tế.
  • Một thư mục ”lib” (library) có tất cả các thư viện và phương thức phổ biến.
  • Một thư mục “class” có một tất cả các file class (trong trường hợp sử dụng Java).
  • Một thư mục “log” có các tệp nhật ký.
  • Một file / thư mục có tất cả các Id phần tử web.
  • Một file chứa URL, môi trường và thông tin đăng nhập.

Xem thêm:

Công ty Cổ phần DevPro Việt Nam
Địa chỉ: Tầng 6, số 147 Mai Dịch, Cầu Giấy, Hà Nội
Điện thoại: 0985.95.08.95
Facebook: https://www.fb.com/devprojscgroup
Tìm hiểu các khóa học tại: https://www.devpro.edu.vn/khoa-hoc

Đánh giá của học viên đã tốt nghiệp

  • Các anh chị nhiệt tình, thân thiện. Em được mở mang nhiều kiến thức

    Nguyễn Hằng ly
  • Các chị dạy rất dễ hiểu và nhiệt tình. Các kiến thức như trong thực tế khi em đi thực tập tại RikkeiSoft. Cám ơn các anh chị nhiều ạ. Chúc Dev có nhiều học viên hơn nữa.

    Vũ Thị Hà Phương
  • Học ở DevPro đã giúp mình có nhiều kinh nghiệm lập trình android thực tế. Tại đây mình được các thầy dạy rất chi tiết theo một lộ trình rõ ràng của dự án cụ thể nên sau này đi làm mình rất dễ bắt nhịp với công việc.

    Nguyễn Trọng Duy
  • Qua khoá học ở DevPro thì em đã có một “ít” vốn trong tay để có thể "bò" trong lĩnh vực vạn người mê này Trong qúa trình học thì em cảm thấy trung tâm suppost rất nhiệt tình từ đồ ăn tối, event và đầu ra :p. Có chị Quyên "sinh gái" siêu nhây và siêu lầy dụ dỗ bán rẻ học viên cho các nhà tuyển dụng :3 **** Đặc biệt các thầy có rất nhiều kinh nghiệm chỉ dạy và giúp đỡ rất nhiệt tính < mấy tháng liền bám càng đi nhờ thấy :p>

    PhạmTiến Đạt
  • Tôi sẽ không khuyên các bạn phải đến DevPro để học tập thay vì những chỗ khác nhưng tôi đã từng là một người giống các bạn. Tôi băn khoăn không biết chọn nơi đâu làm ngọn đèn chỉ lối và tôi đến với Devpro . Mọi người khá hoà đồng , các thầy cũng cực nhiệt tình nhưng cũng có vốn kiến thức rất rộng còn lại là phụ thuộc vào sự nỗ lực của các bạn nữa thôi. Cố lên nhé. #ATran

    Trần Xuân Ái
  • em thấy mọi thứ đều ổn, thầy giáo nhiệt tình trong cách giảng dậy, dev cũng rất quan tâm học viên . Nhưng theo quan điểm của em và nhìn từ sự phát triển của các trung tâm khác , em nghĩ mỗi khóa học ở dev nên có bài tập cũng như dự án giao cho học sinh làm để tạo áp lực cho học viên code, giữa học viên và công ty cần có những buổi giao lưu nhiều hơn, và cũng nên có 1 số bạn trợ giảng giúp thầy đi fix những lỗi cơ bản cho những bạn hay sai , chứ nhiều khi 1 mình thầy mà phải chạy đến từng bàn fix lỗi cũng k xuể , Xin chúc devpro ngày càng phát triển hơn

    Nguyễn Đình Thành
  • Thầy giáo dạy rất nhiệt tình rất dễ hiểu, các chị quản lý vui vẻ, tạo động lực học viên. Bài giảng phong phú bao gồm nhiều kiến thức nền tảng. .., giúp học viên nắm chắc kiến thức. Có điều lớp toàn nam, ko có nữ ạ

    Vũ Văn Thủy
  • -Thầy giáo rất nhiệt tình trong công tác giảng dạy , cũng như vui tính , thầy luôn giúp đỡ bọn e rất nhiệt tình ! Tuy chỉ học với lớp 1 thời gian không quá dài nhưng e cũng cảm thấy tuyệt vời vì đã từng là học trò của thầy ! - Chị Hằng và Chị Quyên rất vui tính và nhiệt tình giúp đỡ bọn e nữa ạ - e chúc trung tâm ngày càng đông học viên hơn nữa

    Phan Trung Phú
  • DevPro là một môi trường tốt để cho những ai chưa biết gì về lập trình theo học. Bên cạnh đó, đội ngũ giảng viên rất chất lượng, nhiệt tình chỉ bảo cả trên lớp lẫn ở nhà. Ngoài ra tôi rất thích chính sách giới thiệu việc làm cho học viên sau khi tốt nghiệp để có thể tiếp với các doanh nghiệp uy tín. Sau hơn 4 tháng học tập tại công ty, tôi đã hoàn toàn tự tin rằng mình có thể tự học hỏi và bắt đầu làm việc ở một công ty mới với vai trò Web Developer. Cảm ơn DevPro vì tất cả!!

    Nguyễn Đức Huy
  • Học một lúc 2 trường, nhưng mình vấn chưa biết tìm đam mê từ đâu. Từ lúc gặp chị Hằng mình đã quyết chọn theo android, và bây giờ mình chưa bao giờ thấy hạnh phúc đến thế. Mình có công việc ổn định, chuẩn bị onsite ở nhật 1 năm hi hi.

    Trần An Hưng
  • 1.Thầy đẹp trai thì không phải bàn rồi!! Lại được cái nhiệt tình!! ok. 2. Công ty có nhiệt tình hỗ trợ không? Công ty có nhiệt tình hỗ trợ sinh viên, vd:tiền học phí được chia làm 3 đợt giúp đỡ những sv khó khăn,.....

    Trương Quang Trường
  • Em thấy trung tâm dạy tốt và chất lượng ạ. Thầy và các chị đều tận tâm, nhiệt tình và hòa đồng. Đặc biệt là giải lao giữa giờ chúng em còn được ăn nhẹ, e rất thích khoản này.

    Trần Thị Hồng Nhung
  • Tại DevPro mình còn được học code trên tool mới nhất của Android, điều đó càng khiến mình thích thú hơn và trở nên say mê từ lúc nào không biết nữa. Không khí học ở đây rất vui vẻ, ngoài giờ học mình cùng các bạn còn được giải lao ăn nhẹ và trò chuyện cùng nhau nên rất thoải mãi.

    Trương Ngọc Đức
  • Dev chính là nơi giúp mình tìm thấy niềm yêu thích code, cũng chính là nơi đã cho mình những bước đi đầu tiên, cho mình những kiến thức nền tảng tốt nhất trên con đường theo đuổi nghề Dev.

    Nguyễn Thanh Hằng
  • Thầy giáo vui tính, nhiệt tình trả lời và giúp đỡ các bạn khi các bạn có thắc mắc hay khi gặp khó khăn. Các anh chị vui tính, thân thiện tạo cảm giác thoải mái và vui vẻ cho các bạn khi học ở đây.

    Cao Minh Lâm
  • Nghĩ lại hồi đấy, không có Devpro thì chắc giờ em phát rồ mất thôi! Em vốn nghĩ mình có thể tự học được, nhưng kiến thức vốn là vô tận, không có người hướng dẫn thì mình sẽ chẳng biết bắt đầu dư lào, bước tiếp là gì? Nhờ DevPro, sự tận tâm của các thầy mà em mới biết à hóa ra mọi thứ thật đơn giản.

    Kim Erico
  • Hồi học ở DevPro, mình rất quý thầy Việt và những người bạn. Từ kiến thức học được từ trung tâm mình đã mạnh dạn đi thực tập ở một công ty lớn của Nhật Bản và đến giờ đã là nhân viên chính thức ở đây rồi. Vui hơn nữa là có bạn học cùng lớp đó giờ đang là đồng nghiệp cùng mình luôn rồi. Hihi

    Nguyễn Thanh Việt
Nguyễn Hằng ly Vũ  Thị Hà Phương Nguyễn Trọng Duy PhạmTiến Đạt Trần Xuân Ái Nguyễn Đình Thành Vũ Văn Thủy Phan Trung Phú Nguyễn Đức Huy Trần An Hưng Trương Quang Trường Trần Thị Hồng Nhung Trương Ngọc Đức Nguyễn Thanh Hằng Cao Minh Lâm Kim Erico Nguyễn Thanh Việt