1.3.2. Cách kiểm thử cookie trong trang web Bước 1: Tắt cookies: Tắt tất cả cookie và cố gắng sử dụng các chức năng chính của trang web Bước 2: Làm hỏng cookies: Chỉnh sửa thủ công cookie trong notepad và thay đổi các thông số với các giá trị ngẫu nhiên Bước 3: Mã hoá cookie: Thông tin nhạy cảm như mật khẩu và tên người dùng phải được mã hoá trước khi gửi đến máy tính của chúng tôi Bước 4: Kiểm tra cookie với nhiều trình duyệt: Kiểm tra xem trang web của bạn có ghi đúng cookie trên một trình duyệt khác như mong đợi không Bước 5: Kiểm tra việc xoá khỏi trang ứng dụng web của bạn: Kiểm tra xem cookie có bị xoá khỏi ứng dụng web của bạn hay không Bước 6: Từ chối cookie một cách có chọn lọc: Xoá các cookie cho các trang web và xem phản ứng với nó Bước 7: Truy cập vào cookie: Cookie được viết bởi một trang web sẽ không thể truy cập được bởi những người khác. Bước 8: Không lạm dụng cookie: Nếu ứng dụng đang được thử nghiệm là một trang web công cộng, không nên lạm dụng cookie Bước 9: Việc kiểm tra phải được thực hiện đúng cách để kiểm tra xem trang web có hoạt động tốt hay không với cài đặt cookie khác nhau Bước 10: Phân loại cookie riêng biệt: Cookie không nên được giữ trong cùng một danh mục virus, thư rác hoặc phần mềm gián điệp 1.3.3. Test Cases cho kiểm thử cookie của ứng dụng web Trường hợp kiểm thử rõ ràng nhất đầu tiên là kiểm tra xem ứng dụng của mình có đang viết đúng cookie hay không. Mình cũng thể sử dụng Cookie Tester application nếu không có bất kì một ứng dụng web nào để test Một vài test cases chính để test cookie của ứng dụng web: 1. Theo chính sách bảo mật Cookie đảm bảo từ các tài liệu thiết kế, không nên có dữ liệu cá nhân hoặc thông tin nhạy cảm nào được lưu trữ trong cookie. Hình 1: Đăng nhập tài khoản Hình 2: Demo dữ liệu password không được đưa lên cookie 2. Nếu không có lựa chọn nào khác ngoài việc phải lưu dữ liệu nhạy cảm trong một cookie, hãy chắc chắn rằng dữ liệu trong cookie được lưu trữ dưới dạng mã hóa. Hình 3: Demo dữ liệu đã được mã hoá khi đưa lên cookie 3. Đảm bảo rằng không có quá nhiều cookie trên trang web. Việc lạm dụng cookie sẽ gây phiền toái cho người dùng nếu trình duyệt nhắc nhở cookie thường xuyên hơn và điều này có thể dẫn đến mất lưu lượng của trang web. Hình 4: Demo không lạm dụng cookie Hình 5: Demo mua hàng Hình 6: Demo thêm sản phẩm vào giỏ hàng Như quá trình demo trên, trang web đã không lạm dụng cookie. Không có quá nhiều cookie trên trang web 4. Vô hiệu hóa các cookie từ cài đặt trình duyệt. Nếu mình đang sử dụng các cookie, các chức năng chính của trang web sẽ không hoạt động bằng cách tắt cookie. Sau đó, thử truy cập trang web đó. Trang web không được có bất kỳ sự cố nào do vô hiệu hóa cookie. 5. AcceptsReject một số cookie: Cách tốt nhất để kiểm tra chức năng của một website là không accept tất cả các cookie. Giả sử, nếu bạn đang viết 10 cookies trong ứng dụng web thì hãy thử accept ngẫu nhiên một vài cookie (accept 5 và reject 5 cookie). Để tính toán số test case trên bạn có thể thiết lập tùy chọn trình duyệt để nhắc nhở bất cứ khi nào cookie được ghi lên đĩa. Trên cửa sổ nhắc nhở này, bạn có thể accept hoặc reject cookie. Sau đó, bạn hãy thử truy cập các chức năng chính của website và xem xét các trang có gặp sự cố hay dữ liệu có bị hư hỏng hay không. 6. Xóa cookie: Cho phép các trang web viết các cookie và đóng tất cả các trình duyệt và sau đó xóa tất cả các cookie. Truy cập vào trang web và kiểm tra. Hình 7: Demo xoá cookie Hình 8: Demo trang web sau khi xoá cookie 7. Tham nhũng các cookie: Như bạn đã biết nơi cookie được lưu trữ. Chỉnh sửa cookie thủ công trong notepad và thay đổi các tham số thành một số giá trị nào đó. Ví dụ sửa nội dung cookie, tên cookie hoặc ngày hết hạn của cookie và xem chức năng trang web. Hình 9: Demo chỉnh sửa cookie Hình 10: Trang web sau khi sửa cookie Trong trường hợp trên, khi chỉnh sửa cookie, tài khoản của người dùng đã bị đăng xuất. Trong một số trường hợp, các cookie bị hỏng cho phép đọc dữ liệu bên trong cho bất kì miền nào khác. Điều này không nên xảy ra với cookie trong trang web của bạn. Chú ý rằng các cookie được viết bởi tên miền rediff.com không thể truy cập bởi tên miền khác như yahoo.com trừ khi và cho đến khi các cookie bị hỏng và ai đó đang cố gắng để hack dữ liệu trên cookie. 8. Test cookie trên nhiều trình duyệt: Đây là case quan trọng nhất để kiểm tra xem trang web được viết cookie đúng cách trên các trình duyệt khác nhau như dự định và trang web hoạt động đúng khi sử dụng các cookie này hay không. Bạn có thể kiểm tra ứng dụng web của bạn trên các trình duyệt thường xuyên được sử dụng như Internet Explorer (Với nhiều version khác nhau), Mozilla Firefox, Netscape, Opera, ... 9. Nếu ứng dụng web sử dụng cookie để duy trì trạng thái đăng nhập của bất kì người dùng nào, hãy đăng nhập vào ứng dụng đó với một số username và password. Trong nhiều trường hợp, mình có thể nhìn thấy tham số ID người dùng đã đăng nhập tực tiếp trên thanh địa chỉ của trình duyệt. Bạn hãy thay đổi tham số này bằng các giá trị khác nhau (Ví dụ, nếu ID của người dùng trước là 100 hãy đổi thành 101, sau đó nhấn enter). Chú ý, thông báo quyền truy cập thích hợp phải được hiển thị cho người dùng và người dùng không thể xem tài khoản của người dùng khác. 10. Kiểm tra loại cookie và ngày hết hạn trong tập tin cookie hoặc bảng điều khiển trình duyệt 11. Xác minh nếu ngày hết hạn được đặt theo yêu cầu. Trong một số trường hợp, bạn cần kiểm tra xem ngày hết hạn cookie đã được cập nhật làm việc với một ứng dụng hay chưa (ví dụ như làm mới phiên làm việc). Điều này có thể được kiểm tra trong bảng điều khiển trình duyệt hoặc file cookie. Chương 2: Kiểm thử Cloud 2.1. Giới thiệu về điện toán đám mây (Cloud Computing) Điện toán đám mây (Cloud Computing): là việc phân phối các tài nguyên CNTT theo nhu cầu qua Internet với chính sách thanh toán theo mức sử dụng. Thay vì mua, sở hữu và bảo trì các trung tâm dữ liệu và máy chủ vật lý, bạn có thể tiếp cận các dịch vụ công nghệ, như năng lượng điện toán, lưu trữ và cơ sở dữ liệu, khi cần thiết, từ nhà cung cấp dịch vụ đám mây. Mục đích: Tiết kiệm chi phí, linh hoạt mở rộng quy mô, cải thiện sự nhanh chóng trong công việc. Có 3 mô hình của điện toán đám mây: • SaaS– Software as a service (Phần mềm dưới dạng dịch vụ): Lớp trên cùng ở đây là lớp ứng dụng, thường sẽ hiển thị với bất kỳ người dùng nào. Ở đây, các ứng dụngsản phẩm có sẵn cho người dùng theo yêu cầu thông qua internet. Do đó thay vì phải mua giấy phép cho một người dùng cụ thể, điều này chứng tỏ là cách hiệu quả nhất về chi phí để đảm bảo rằng giấy phép luôn được sử dụng. Ví dụ về đây là Gmail, Google Tài liệu, Photoshop, v.v. • PaaS– Platform as a service (Nền tảng dưới dạng dịch vụ): Lớp trung tâm trong Cloud là nền tảng. Ở đây không có quyền kiểm soát cơ sở hạ tầng cơ sở, nhưng bạn có thể truy cập các ứng dụng được triển khai. Do đó, điều này cung cấp toàn bộ môi trường chạy theo yêu cầu có thể là một môi trường phát triển hoặc kiểm thử. Do đó trong mô hình này, phổ biến nhất bạn sẽ có một máy ảo có chứa môi trường hoàn chỉnh như hệ điều hành, cần thiết middleware, vv có sẵn khi bạn cần nó. • IaaS– Infrastructure as a service (Cơ sở hạ tầng như một dịch vụ): Đây là lớp cơ bản nhất tạo thành khối xây dựng của Cloud. Nó chủ yếu bao gồm các nguồn lực vật lý như lưu trữ, thiết bị mạng, máy chủ tính toán, ... Tất cả các tài nguyên máy tính này đều có sẵn theo yêu cầu, nơi người dùng trả tiền cho nó theo cách sử dụng của mình. 2.2. Kiểm thử cloud 2.2.1. Khái niệm Kiểm thử cloud (Cloud Testing): là một loại kiểm thử phần mềm trong đó ứng dụng phần mềm được kiểm tra bằng cách sử dụng các dịch vụ điện toán đám mây. Hình thức kiểm thử này được thực hiện trên môi trường điện toán đám mây của bên thứ ba có cơ sở hạ tầng cần thiết để thực hiện kiểm tra. 2.2.2. Mục đích Kiểm tra phần mềm về các yêu cầu chức năng cũng như phi chức năng bằng cách sử dụng điện toán đám mây, đảm bảo tính khả dụng nhanh hơn với khả năng mở rộng và tính linh hoạt nhằm tiết kiệm thời gian và chi phí cho việc kiểm thử phần mềm. 2.2.3. Các kiểu kiểm thử Cloud Kiểm thử toàn bộ Cloud: Cloud được xem như một thực thể thống nhất dựa trên các tính năng của nó và kiểm thử được thực hiện dựa trên đó. Kiểm thử trong một Cloud: Đây là kiểm thử được thực hiện bên trong Cloud bằng cách kiểm tra từng tính năng bên trong của nó Kiểm thử trên nhiều Cloud: Dựa trên các thông số kỹ thuật, ở đây kiểm thử được thực hiện trên các loại Cloud công cộng, riêng tư và lai khác nhau của Cloud. Kiểm thử SaaS trên Cloud: Kiểm tra chức năng và phi chức năng được thực hiện dựa trên các yêu cầu. 2.2.4. Kiểm thử SaaS (SaaS testing) Kiểm thử SaaS là một quy trình kiểm thử phần mềm, trong đó ứng dụng phần mềm được xây dựng trong mô hình Software as a Service được kiểm tra về các yêu cầu chức năng cũng như phi chức năng. Mục đích của kiểm thử SaaS là đảm bảo chất lượng bằng cách kiểm tra tính bảo mật dữ liệu, tính toàn vẹn, hiệu suất, khả năng tương thích và khả năng mở rộng của ứng dụng phần mềm. 2.2.5. Các trường hợp kiểm thử Cloud 2.2.5.1. Kiểm thử chức năng: Kiểm thử chức năng để đảm bảo rằng các yêu cầu nghiệp vụ đang được đáp ứng. Một số kiểm thử chức năng được mô tả dưới đây: • Kiểm thử xác minh hệ thống: Điều này đảm bảo liệu các môđun khác nhau có hoạt động khớp với nhau hay không, do đó đảm bảo rằng hoạt động của chúng đúng như mong đợi. • Kiểm thử chấp nhận: Đây là giải pháp dựa trên đám mây được bàn giao cho người dùng để đảm bảo đáp ứng được kỳ vọng của họ. • Kiểm thử khả năng tương tác: Bất kỳ ứng dụng nào cũng phải có tính linh hoạt để hoạt động mà không có bất kỳ vấn đề nào trên các nền tảng khác nhau nhưng nó cũng phải hoạt động trơn tru khi di chuyển từ cơ sở hạ tầng Cloud sang nền tảng khác. 2.2.5.2. Kiểm thử phi chức năng: Kiểm thử phi chức năng chủ yếu tập trung vào các kiểm thử dựa trên ứng dụng web đảm bảo rằng chúng đáp ứng các yêu cầu mong muốn. Dưới đây là một vài dạng kiểm thử phi chức năng: • Kiểm thử tính khả dụng: nhà cung cấp Cloud phải đảm bảo rằng Cloud có sẵn suốt ngày đêm. Vì có thể có nhiều hoạt động quan trọng trong nhiệm vụ, quản trị viên phải đảm bảo rằng không có tác động tiêu cực đến người tiêu dùng • Kiểm thử việc nhiều người sử dụng: Ở đây, nhiều người dùng sử dụng dịch vụ Cloud. Kiểm thử phải được thực hiện để đảm bảo rằng có đủ bảo mật và kiểm soát truy cập dữ liệu khi nhiều người dùng đang sử dụng một cá thể duy nhất. • Kiểm thử hiệu suất: Việc xác minh thời gian phản hồi cần phải được thực hiện để đảm bảo rằng mọi thứ vẫn còn nguyên vẹn ngay cả khi có rất nhiều yêu cầu được đáp ứng. Mạng chậm cũng là một trong những yếu tố quan trọng để đánh giá hiệu suất. Ngoài ra, cân bằng tải là công việc cần phải được thực hiện khi có giảm tải, bằng cách ngừng hoạt động tài nguyên. Do đó việc kiểm tra khả năng chịu tải và quá tải được thực hiện trong việc cung cấp Cloud để đảm bảo các ứng dụng hoạt động tối ưu với việc tăng giảm tải và quá tải. • Kiểm thử bảo mật: Vì mọi thứ đều khả dụng bất cứ lúc nào với Cloud, điều cần thiết là đảm bảo rằng tất cả thông tin nhạy cảm của người dùng không có quyền truy cập trái phép và quyền riêng tư của người dùng vẫn còn nguyên vẹn. Khi duy trì các ứng dụng trong Cloud, toàn vẹn dữ liệu người dùng cũng phải được xác minh. • Kiểm thử khôi phục thảm họa: Như đã nêu trong kiểm tra tính khả dụng, Cloud luôn sẵn sàng và nếu có bất kỳ sự cố nào như mất mạng, hỏng hóc do tải cực đoan, lỗi hệ thống, v.v. thất bại và mất mát dữ liệu sẽ xảy ra trong giai đoạn này. • Kiểm thử khả năng mở rộng: Kiểm tra để đảm bảo rằng dịch vụ có khả năng cung cấp các tiện ích mở rộng quy mô hoặc giảm kích thước theo nhu cầu. 2.2.6. Sự khác biệt giữa kiểm thử thông thường và kiểm thử Cloud Các thông số kiểm thử Kiểm thử thông thường Kiểm thử Cloud Mục đích Kiểm tra khả năng tương tác, tương thích, khả năng sử dụng. Xác minh chất lượng của chức năng hệ thống và hiệu suất dựa trên thông số kỹ thuật đã cho. Xác minh chất lượng hiệu suất và các chức năng của SaaS, Clouds và các ứng dụng bằng cách tận dụng môi trường cloud. Chi phí Chi phí cao do yêu cầu phần cứng và phần mềm. Chỉ phải trả phí vận hành, thanh toán những gì sử dụng.
Kiểm thử Cookie
Giới thiệu về cookie
Cookie là một thông tin nhỏ được lưu trữ trong file text trên ổ cứng của client bởi web server Thông tin này được trình duyệt web sử dụng để truy xuất dữ liệu từ máy Cookie chứa dữ liệu cá nhân của người dùng và thông tin cần thiết để giao tiếp giữa các trang web khác nhau.
1.1.2 Tại sao sử dụng cookie?
Cookie giúp xác định người dùng và theo dõi hành vi duyệt web của họ trên các trang của website Tương tác giữa trình duyệt và máy chủ web là stateless, nghĩa là không lưu trữ dữ liệu của client trên server.
Khi truy cập vào tên miền "http://www.example.com/1.html", trình duyệt web sẽ gửi yêu cầu đến máy chủ web example.com để lấy trang 1.html.
Lần truy cập tiếp theo, nếu mình truy cập tên miền
Khi người dùng truy cập vào "http://www.example.com/2.html", một yêu cầu mới được gửi đến máy chủ example.com để lấy trang 2.html Lúc này, máy chủ web không có thông tin gì về người dùng từ trang 1.html mà họ đã truy cập trước đó.
Vậy làm sao để biết lịch sử của người sử dụng đã tương tác trước đó với máy chủ web?
Cookie được sử dụng để duy trì trạng thái của người dùng và tăng cường sự tương tác giữa trình duyệt web và máy chủ web.
Cookie phục vụ cho mục đích duy trì sự tương tác của người dùng với một trình duyệt web.
1.1.3 Cookie hoạt động như thế nào?
Giao thức HTTP được sử dụng để trao đổi các tập thông tin trên web được sử dụng để duy trì các cookie.
Có hai loại của giao thức HTTP là giao thức HTTP Stateless và và HTTP
Giao thức HTTP Stateless không giữ bất kỳ bản ghi nào về lịch sử trang web truy cập trước đó.
Giao thức HTTP Statefull lưu trữ lịch sử của các trình duyệt web và các tương tác trước đó với máy chủ, cho phép các cookie duy trì sự tương tác của người dùng.
Khi người dùng truy cập một trang web sử dụng cookie, mã trong HTML sẽ ghi một tệp văn bản trên máy của họ, được gọi là cookie Các ngôn ngữ lập trình như JavaScript, PHP và Perl thường được sử dụng để thực hiện việc này.
Có hai loại cookie được ghi trên máy người dùng là:
Sesion cookies: Cookie này hoạt động cho đến khi trình duyệt gọi đến cookie đang mở Khi mình đóng trình duyệt thì phiên cookie này sẽ bị xóa
Persistent cookies: Đây là những cookie được ghi vĩnh viễn trên máy người dùng và kéo dài hàng tháng hoặc nhiều năm.
1.1.4 Các cookie được lưu trữ ở đâu? Đường dẫn nơi cookie được lưu trữ phụ thuộc vào trình duyệt Các trình duyệt khác nhau thì lưu trữ cookie theo các đường dẫn khác nhau.
Các đường dẫn được đề cập dưới đây là ví dụ nơi các cookie được lưu trữ:
InternetExplorer: “C:\Users\username\AppData\Roaming\Microsoft\
Windows7: “C:\Users\username\AppData\Roaming\Microsoft\Windows\
“C:\Users\username\AppData\Local\Microsoft\Windows\INetCookies”.
Trong trình duyệt Google Chrome mình có thể tìm các cookie bằng gõ
"chrome://settings/content/cookies" trong thanh địa chỉ của bạn Các cookie cũng có thể được truy cập bằng việc sử dụng trình duyệt console(F12->application->storage->cookies->).
Các ứng dụng về việc sử dụng các cookie
Các cookie được sử dụng để duy trì hệ thống đặt hàng trực tuyến Các cookie này ghi nhớ những sản phẩm mà người dùng muốn mua
Nếu người dùng thêm sản phẩm vào giỏ hàng nhưng không muốn mua ngay và đóng cửa trình duyệt, điều này có thể dẫn đến việc họ quên sản phẩm hoặc không hoàn tất giao dịch Việc này ảnh hưởng đến trải nghiệm mua sắm và có thể làm giảm doanh thu cho cửa hàng trực tuyến.
Khi người dùng quay lại trang mua hàng, họ vẫn có thể thấy tất cả các sản phẩm đã được thêm vào giỏ hàng trong lần truy cập trước.
1.2.2 Các trang web được cá nhân hoá
Khi người dùng truy cập một trang web, họ có thể chọn những trang mà họ không muốn thấy hoặc không muốn ghé thăm Các lựa chọn này sẽ được lưu trữ trong một cookie cho đến khi người dùng trực tuyến, và những trang đó sẽ không được hiển thị cho họ.
1.2.3 Theo dõi người dùng Để theo dõi số lượng khách truy cập trực tuyến tại một thời điểm cụ thể.
Một số công ty sử dụng cookie để quản lý quảng cáo hiển thị trên thiết bị của người dùng, xác định thời điểm và loại quảng cáo nào nên được trình bày Điều này phụ thuộc vào sở thích của người dùng và các từ khóa được tìm kiếm trên trang web.
Các cookie có thể theo dõi các phiên người dùng với tên miền cụ thể sử dụng
ID người dùng và password.
Kiểm thử cookie
Kiểm thử cookie (Cookie Testing) là một loại kiểm thử phần mềm nhằm mục đích kiểm tra xem ứng dụng của mình có đang viết đúng cookie hay không.
1.3.2 Cách kiểm thử cookie trong trang web
Bước 1: Tắt cookies: Tắt tất cả cookie và cố gắng sử dụng các chức năng chính của trang web
Bước 2: Làm hỏng cookies: Chỉnh sửa thủ công cookie trong notepad và thay đổi các thông số với các giá trị ngẫu nhiên
Bước 3: Mã hoá cookie: Thông tin nhạy cảm như mật khẩu và tên người dùng phải được mã hoá trước khi gửi đến máy tính của chúng tôi
Bước 4: Kiểm tra cookie với nhiều trình duyệt: Kiểm tra xem trang web của bạn có ghi đúng cookie trên một trình duyệt khác như mong đợi không
Bước 5: Kiểm tra việc xoá khỏi trang ứng dụng web của bạn: Kiểm tra xem cookie có bị xoá khỏi ứng dụng web của bạn hay không
Bước 6: Từ chối cookie một cách có chọn lọc: Xoá các cookie cho các trang web và xem phản ứng với nó
Bước 7: Truy cập vào cookie: Cookie được viết bởi một trang web sẽ không thể truy cập được bởi những người khác.
Bước 8: Không lạm dụng cookie: Nếu ứng dụng đang được thử nghiệm là một trang web công cộng, không nên lạm dụng cookie
Bước 9: Việc kiểm tra phải được thực hiện đúng cách để kiểm tra xem trang web có hoạt động tốt hay không với cài đặt cookie khác nhau
Bước 10: Phân loại cookie riêng biệt: Cookie không nên được giữ trong cùng một danh mục virus, thư rác hoặc phần mềm gián điệp
1.3.3 Test Cases cho kiểm thử cookie của ứng dụng web
Trường hợp kiểm thử rõ ràng nhất là xác minh xem ứng dụng của bạn có ghi đúng cookie hay không Nếu không có ứng dụng web nào để kiểm tra, bạn có thể sử dụng ứng dụng Cookie Tester.
Một vài test cases chính để test cookie của ứng dụng web:
1 Theo chính sách bảo mật Cookie đảm bảo từ các tài liệu thiết kế, không nên có dữ liệu cá nhân hoặc thông tin nhạy cảm nào được lưu trữ trong cookie.
Hình 1: Đăng nhập tài khoản Hình 2: Demo dữ liệu password không được đưa lên cookie
2 Nếu không có lựa chọn nào khác ngoài việc phải lưu dữ liệu nhạy cảm trong một cookie, hãy chắc chắn rằng dữ liệu trong cookie được lưu trữ dưới dạng mã hóa.
Hình 3: Demo dữ liệu đã được mã hoá khi đưa lên cookie
3 Đảm bảo rằng không có quá nhiều cookie trên trang web Việc lạm dụng cookie sẽ gây phiền toái cho người dùng nếu trình duyệt nhắc nhở cookie thường xuyên hơn và điều này có thể dẫn đến mất lưu lượng của trang web.
Hình 4: Demo không lạm dụng cookie
Hình 6: Demo thêm sản phẩm vào giỏ hàng
Như quá trình demo trên, trang web đã không lạm dụng cookie Không có quá nhiều cookie trên trang web
4 Vô hiệu hóa các cookie từ cài đặt trình duyệt Nếu mình đang sử dụng các cookie, các chức năng chính của trang web sẽ không hoạt động bằng cách tắt cookie Sau đó, thử truy cập trang web đó Trang web không được có bất kỳ sự cố nào do vô hiệu hóa cookie.
5 Accepts/Reject một số cookie: Cách tốt nhất để kiểm tra chức năng của một website là không accept tất cả các cookie Giả sử, nếu bạn đang viết 10 cookies trong ứng dụng web thì hãy thử accept ngẫu nhiên một vài cookie
Để kiểm tra số lượng cookie, bạn có thể cấu hình trình duyệt để thông báo mỗi khi cookie được lưu trữ Trong thông báo này, bạn có thể chọn chấp nhận hoặc từ chối cookie Sau đó, hãy thử truy cập các chức năng chính của trang web và kiểm tra xem có gặp sự cố nào hoặc dữ liệu có bị hỏng không.
6 Xóa cookie: Cho phép các trang web viết các cookie và đóng tất cả các trình duyệt và sau đó xóa tất cả các cookie Truy cập vào trang web và kiểm tra.
Hình 8: Demo trang web sau khi xoá cookie
7 Tham nhũng các cookie: Như bạn đã biết nơi cookie được lưu trữ Chỉnh sửa cookie thủ công trong notepad và thay đổi các tham số thành một số giá trị nào đó Ví dụ sửa nội dung cookie, tên cookie hoặc ngày hết hạn của cookie và xem chức năng trang web.
Hình 9: Demo chỉnh sửa cookie
Hình 10: Trang web sau khi sửa cookie Trong trường hợp trên, khi chỉnh sửa cookie, tài khoản của người dùng đã bị đăng xuất.
Trong một số trường hợp, cookie bị hỏng có thể cho phép truy cập dữ liệu từ các miền khác, điều này không nên xảy ra với cookie trên trang web của bạn Cookies được tạo bởi tên miền rediff.com không thể được truy cập bởi tên miền khác như yahoo.com, trừ khi cookie bị hỏng và có ai đó cố gắng hack dữ liệu.
8 Test cookie trên nhiều trình duyệt: Đây là case quan trọng nhất để kiểm tra xem trang web được viết cookie đúng cách trên các trình duyệt khác nhau như dự định và trang web hoạt động đúng khi sử dụng các cookie này hay không Bạn có thể kiểm tra ứng dụng web của bạn trên các trình duyệt thường xuyên được sử dụng như Internet Explorer (Với nhiều version khác nhau), Mozilla Firefox, Netscape, Opera,
9 Nếu ứng dụng web sử dụng cookie để duy trì trạng thái đăng nhập của bất kì người dùng nào, hãy đăng nhập vào ứng dụng đó với một số username và password.
Trong một số trường hợp, tham số ID của người dùng đã đăng nhập có thể hiển thị trực tiếp trên thanh địa chỉ của trình duyệt Bạn có thể thử thay đổi tham số này bằng các giá trị khác nhau, chẳng hạn như đổi ID từ 100 thành 101 và nhấn enter Tuy nhiên, cần lưu ý rằng thông báo quyền truy cập phù hợp phải được hiển thị cho người dùng, và họ không được phép xem tài khoản của người dùng khác.
10 Kiểm tra loại cookie và ngày hết hạn trong tập tin cookie hoặc bảng điều khiển trình duyệt
11 Xác minh nếu ngày hết hạn được đặt theo yêu cầu Trong một số trường hợp, bạn cần kiểm tra xem ngày hết hạn cookie đã được cập nhật làm việc với một ứng dụng hay chưa (ví dụ như làm mới phiên làm việc) Điều này có thể được kiểm tra trong bảng điều khiển trình duyệt hoặc file cookie.
Kiểm thử Cloud
Giới thiệu về điện toán đám mây (Cloud Computing)
- Điện toán đám mây (Cloud Computing): là việc phân phối các tài nguyên
CNTT theo nhu cầu qua Internet cho phép bạn sử dụng dịch vụ công nghệ như điện toán, lưu trữ và cơ sở dữ liệu mà không cần phải mua sắm, sở hữu hay bảo trì các trung tâm dữ liệu và máy chủ vật lý Thay vào đó, bạn có thể tiếp cận các dịch vụ này từ nhà cung cấp dịch vụ đám mây theo mức sử dụng.
- Mục đích: Tiết kiệm chi phí, linh hoạt mở rộng quy mô, cải thiện sự nhanh chóng trong công việc.
- Có 3 mô hình của điện toán đám mây:
SaaS (Phần mềm dưới dạng dịch vụ) là lớp ứng dụng hiển thị cho người dùng, cho phép truy cập các ứng dụng và sản phẩm qua internet theo yêu cầu Thay vì mua giấy phép cho từng người dùng, mô hình này mang lại hiệu quả chi phí cao hơn, đảm bảo giấy phép luôn được sử dụng Ví dụ điển hình của SaaS là Gmail và Google.
Nền tảng dưới dạng dịch vụ (PaaS) là lớp trung tâm trong điện toán đám mây, cho phép người dùng truy cập các ứng dụng đã được triển khai mà không cần kiểm soát cơ sở hạ tầng Mô hình này cung cấp một môi trường chạy linh hoạt, có thể được sử dụng cho phát triển hoặc kiểm thử Thông thường, người dùng sẽ có một máy ảo với môi trường hoàn chỉnh, bao gồm hệ điều hành và các phần mềm trung gian cần thiết, sẵn sàng khi cần thiết.
IaaS (Cơ sở hạ tầng như một dịch vụ) là lớp cơ bản nhất trong cấu trúc của điện toán đám mây, bao gồm các nguồn lực vật lý thiết yếu như lưu trữ, thiết bị mạng và máy chủ tính toán.
Tất cả các tài nguyên máy tính này đều có sẵn theo yêu cầu, nơi người dùng trả tiền cho nó theo cách sử dụng của mình.
Kiểm thử cloud
Kiểm thử cloud (Cloud Testing) là một phương pháp kiểm thử phần mềm, trong đó ứng dụng được kiểm tra thông qua các dịch vụ điện toán đám mây Hình thức này được thực hiện trên môi trường điện toán đám mây của bên thứ ba, nơi có cơ sở hạ tầng cần thiết để tiến hành kiểm tra hiệu quả.
Kiểm tra phần mềm thông qua điện toán đám mây giúp đánh giá các yêu cầu chức năng và phi chức năng, đồng thời đảm bảo tính khả dụng nhanh chóng Phương pháp này mang lại khả năng mở rộng và linh hoạt, từ đó tiết kiệm thời gian và chi phí cho quy trình kiểm thử phần mềm.
2.2.3 Các kiểu kiểm thử Cloud
Kiểm thử toàn bộ Cloud là quá trình đánh giá một thực thể thống nhất dựa trên các tính năng của nó, đảm bảo rằng mọi khía cạnh của dịch vụ Cloud đều hoạt động hiệu quả và đáp ứng các yêu cầu.
- Kiểm thử trong một Cloud: Đây là kiểm thử được thực hiện bên trong
Cloud bằng cách kiểm tra từng tính năng bên trong của nó
Kiểm thử trên nhiều nền tảng Cloud là rất quan trọng, bao gồm các loại Cloud công cộng, riêng tư và lai khác nhau, dựa trên các thông số kỹ thuật cụ thể.
- Kiểm thử SaaS trên Cloud: Kiểm tra chức năng và phi chức năng được thực hiện dựa trên các yêu cầu.
2.2.4 Kiểm thử SaaS (SaaS testing)
Kiểm thử SaaS là quy trình kiểm thử phần mềm, trong đó ứng dụng được phát triển theo mô hình Software as a Service được đánh giá dựa trên các yêu cầu chức năng và phi chức năng.
Mục đích của kiểm thử SaaS là đảm bảo chất lượng ứng dụng phần mềm thông qua việc kiểm tra tính bảo mật dữ liệu, tính toàn vẹn, hiệu suất, khả năng tương thích và khả năng mở rộng.
2.2.5 Các trường hợp kiểm thử Cloud
- Kiểm thử chức năng để đảm bảo rằng các yêu cầu nghiệp vụ đang được đáp ứng
- Một số kiểm thử chức năng được mô tả dưới đây:
Kiểm thử xác minh hệ thống là quá trình đảm bảo rằng các mô-đun khác nhau hoạt động hài hòa với nhau, từ đó xác nhận rằng chức năng của chúng diễn ra đúng như mong đợi.
Kiểm thử chấp nhận: Đây là giải pháp dựa trên đám mây được bàn giao cho người dùng để đảm bảo đáp ứng được kỳ vọng của họ.
Kiểm thử khả năng tương tác là yếu tố quan trọng, đảm bảo rằng ứng dụng có tính linh hoạt để hoạt động mượt mà trên nhiều nền tảng khác nhau Đồng thời, ứng dụng cũng cần duy trì hiệu suất ổn định khi chuyển đổi từ hạ tầng Cloud sang các nền tảng khác.
2.2.5.2 Kiểm thử phi chức năng:
- Kiểm thử phi chức năng chủ yếu tập trung vào các kiểm thử dựa trên ứng dụng web đảm bảo rằng chúng đáp ứng các yêu cầu mong muốn.
- Dưới đây là một vài dạng kiểm thử phi chức năng:
Nhà cung cấp Cloud cần đảm bảo tính khả dụng liên tục của dịch vụ 24/7, nhằm hỗ trợ các hoạt động quan trọng trong nhiệm vụ Quản trị viên phải đảm bảo rằng không có tác động tiêu cực nào đến người tiêu dùng trong quá trình sử dụng dịch vụ.
Kiểm thử đa người dùng là quá trình quan trọng trong dịch vụ Cloud, nhằm đảm bảo rằng hệ thống có đủ bảo mật và kiểm soát truy cập dữ liệu khi nhiều người dùng cùng sử dụng một cá thể duy nhất.
Kiểm thử hiệu suất là quá trình xác minh thời gian phản hồi để đảm bảo tính toàn vẹn khi có nhiều yêu cầu được xử lý Mạng chậm là yếu tố quan trọng trong việc đánh giá hiệu suất Cân bằng tải cần được thực hiện khi có giảm tải bằng cách ngừng hoạt động tài nguyên Do đó, việc kiểm tra khả năng chịu tải và quá tải trong môi trường Cloud là cần thiết để đảm bảo các ứng dụng hoạt động tối ưu trong các tình huống tăng hoặc giảm tải.
Kiểm thử bảo mật là rất quan trọng trong môi trường Cloud, nơi mà thông tin nhạy cảm của người dùng có thể bị truy cập trái phép Đảm bảo quyền riêng tư của người dùng và duy trì toàn vẹn dữ liệu là điều cần thiết khi quản lý các ứng dụng trên Cloud.
Kiểm thử khôi phục thảm họa: Như đã nêu trong kiểm tra tính khả dụng,
Cloud luôn sẵn sàng, nhưng trong trường hợp xảy ra sự cố như mất mạng, hỏng hóc do tải cực đoan hoặc lỗi hệ thống, có thể dẫn đến thất bại và mất mát dữ liệu.
Kiểm thử khả năng mở rộng là quá trình kiểm tra nhằm đảm bảo rằng dịch vụ có thể mở rộng quy mô hoặc giảm kích thước linh hoạt theo nhu cầu sử dụng.
2.2.6 Sự khác biệt giữa kiểm thử thông thường và kiểm thử Cloud
Các thông số kiểm thử Kiểm thử thông thường Kiểm thử Cloud
Kiểm tra khả năng tương tác, tương thích, khả năng sử dụng.
Xác minh chất lượng của chức năng hệ thống và hiệu suất dựa trên thông số kỹ thuật đã cho.
Xác minh chất lượng hiệu suất và các chức năng của SaaS, Clouds và các ứng dụng bằng cách tận dụng môi trường cloud.
Chi phí cao do yêu cầu phần cứng và phần mềm.
Chỉ phải trả phí vận hành, thanh toán những gì sử dụng.
Xác thực các chức năng (đơn vị và hệ thống) cũng như các tính năng của nó.
Kiểm tra người dùng cuối chức năng ứng dụng trên SaaS hoặc Cloud.
Môi trường kiểm thử Được định cấu hình và cố định trước trong phòng kiểm thử.
Công khai mở với các tài nguyên máy tính đa dạng.
Kiểm tra dựa trên thành phần, kiến trúc và chức năng.
Kiểm tra tích hợp dựa trên SaaS.
Dựa trên quy trình, máy chủ và quyền riêng tư
Dựa trên Cloud, SaaS và kiểm tra thời gian thực trên Cloud của nhà cung cấp
Kiểm thử hiệu suất và khả năng mở rộng
Thực hiện trong một môi trường kiểm thử cố định. Áp dụng cả dữ liệu kiểm tra trực truyến ảo và thời gian thực.
2.2.7 Những thách thức, khó khăn của kiểm thử Cloud
2.2.7.1 Bảo mật dữ liệu và quyền riêng tư Ứng dụng Cloud có bản chất là nhiều người thuê, nguy cơ bị đánh cắp dữ liệu luôn tồn tại Là một chiến lược kiểm thử Cloud, người dùng phải được các nhà cung cấp đảm bảo về tính an toàn cho dữ liệu của họ.
2.2.7.2 Thời gian thông báo ngắn
Kiểm thử Embedded
Giới thiệu về hệ thống nhúng (Embedded System)
Hệ thống nhúng là thiết bị điện tử mà trong đó phần mềm và phần cứng được kết hợp chặt chẽ, cho phép điều khiển các chức năng cụ thể Những máy tính này được tích hợp vào các thiết bị khác để thực hiện các ứng dụng chuyên biệt.
Hệ thống nhúng có thể chứa nhiều thiết bị tính toán khác nhau
Phần mềm nhúng là chương trình được phát triển và biên dịch trên máy tính, sau đó được nạp vào hệ thống khác, bao gồm nhiều bộ vi xử lý đã được cài đặt hệ điều hành, bộ nhớ ghi chép và các cổng giao tiếp với phần cứng khác.
Hiện nay, phần lớn phần mềm nhúng được ứng dụng trong các sản phẩm truyền thông, tự động hóa điều khiển, quan trắc và truyền tin, cũng như trong ô tô, máy móc, thiết bị y tế và các thiết bị năng lượng.
Kiểm thử phần mềm nhúng (Kiểm thử Embedded)
Kiểm thử phần mềm nhúng là quá trình kiểm tra các thuộc tính chức năng và phi chức năng của phần mềm và phần cứng trong hệ thống nhúng, nhằm đảm bảo sản phẩm cuối cùng không có lỗi.
- Kiểm tra và đảm bảo phần mềm liên quan có chất lượng tốt và tuân thủ tất cả các yêu cầu mà phần mềm đó phải đáp ứng.
Một phương pháp hiệu quả để bảo đảm an ninh cho các ứng dụng quan trọng như thiết bị y tế, đường sắt, hàng không và ngành công nghiệp xe cộ.
- Kiểm tra nghiêm ngặt và cẩn thận là rất quan trọng để cấp chứng nhận phần mềm.
3.2.3 Cách thực hiện kiểm thử phần mềm nhúng
3.2.3.1 Các lý do kiểm thử
- Để tìm lỗi trong phần mềm.
- Giúp giảm rủi ro cho cả người dùng và công ty phát triển.
- Cắt giảm chi phí phát triển và bảo trì.
- Để cải thiện hiệu suất
3.2.3.2 Các hoạt động được thực hiện
- Cung cấp đầu vào cho phần mềm.
- Một phần của phần mềm được thực thi.
Trạng thái phần mềm được theo dõi chặt chẽ, với các đầu ra được kiểm tra kỹ lưỡng để đảm bảo rằng chúng khớp với kết quả mong đợi, đáp ứng đầy đủ các yêu cầu và không xảy ra sự cố hệ thống.
3.2.4 Các loại kiểm thử phần mềm nhúng
Về cơ bản, có 5 cấp độ kiểm thử có thể được áp dụng cho phần mềm nhúng:
3.2.4.1 Kiểm thử đơn vị phần mềm
- Các mô-đun đơn vị là một chức năng hoặc lớp.
Kiểm thử đơn vị là quá trình do nhóm phát triển thực hiện, chủ yếu là các nhà phát triển, và thường được tiến hành theo mô hình đánh giá ngang hàng Quá trình này dựa trên các đặc điểm kỹ thuật của các trường hợp thử nghiệm mô-đun đã được phát triển.
- Kiểm thử tích hợp có thể được phân thành hai phân đoạn:
1 Kiểm tra tích hợp phần mềm
2 Kiểm tra tích hợp phần mềm / phần cứng.
Phát triển phần mềm nhúng đặc trưng bởi sự tập trung vào môi trường thực tế, điều này tạo ra thách thức cho quá trình kiểm thử, vì việc kiểm thử toàn diện không thể thực hiện trong điều kiện mô phỏng.
3.2.4.3 Kiểm thử đơn vị hệ thống
Mô-đun được kiểm tra là một khung toàn diện, bao gồm mã phần mềm hoàn chỉnh cho tất cả các hệ điều hành thời gian thực (RTOS) và các thành phần nền tảng liên quan như ngắt, cơ chế tác vụ và truyền thông.
Tài nguyên hệ thống được theo dõi để đánh giá khả năng hỗ trợ thực thi hệ thống nhúng Tùy thuộc vào từng tổ chức, việc kiểm thử đơn vị hệ thống có thể do nhà phát triển hoặc nhóm tích hợp hệ thống chuyên trách thực hiện.
3.2.4.4 Kiểm thử tích hợp hệ thống
Các điểm kiểm soát và quan sát (PCO) kết hợp các giao thức truyền thông và hệ điều hành thời gian thực (RTOS) liên quan đến mạng, bao gồm tin nhắn mạng và các sự kiện RTOS.
3.2.4.5 Kiểm thử xác thực hệ thống
- Mô-đun được kiểm tra là một hệ thống con hoặc hệ thống nhúng hoàn chỉnh.
Mục tiêu của kiểm thử cuối cùng là đảm bảo đáp ứng các yêu cầu chức năng của các thực thể bên ngoài Kiểm tra này liên quan đến các thực thể bên ngoài, thiết bị trong mạng viễn thông, hoặc cả hai.
3.2.5 Sự khác biệt giữa kiểm thử nhúng và kiểm thử phần mềm
Kiểm thử nhúng Kiểm thử phần mềm
Kiểm thử nhúng có liên quan đến cả phần mềm cũng như phần cứng.
Kiểm thử phần mềm chỉ liên quan đến phần mềm.
Kiểm thử nhúng được thực hiện trên các hệ thống nhúng hoặc chip, nó có thể là kiểm thử hộp đen hoặc hộp trắng.
Trung bình 90% kiểm thử được thực hiện trên thế giới hoàn toàn là kiểm thử hộp đen thủ công.
Các lĩnh vực chính của kiểm thử là hoạt động của phần cứng dựa trên đầu vào.
Các lĩnh vực kiểm thử chính là kiểm tra GUI, chức năng, xác nhận và một số cấp độ kiểm tra cơ sở dữ liệu.
Kiểm thử nhúng thường được thực hiện trên phần cứng.
Ví dụ: Máy thuộc lĩnh vực chăm sóc sức khỏe, Vi điều khiển được sử dụng trong máy tính.
Kiểm thử phần mềm được thực hiện chủ yếu trên các ứng dụng máy khách, máy chủ và web.
Ví dụ: Google Mail, Yahoo Mail, ứng dụng Android.
3.2.6 Các khó khăn, thách thức của kiểm thử phần mềm nhúng
Một số thách thức có thể gặp phải trong quá trình kiểm thử phần mềm nhúng:
Sự phụ thuộc vào phần cứng là một trong những thách thức lớn nhất trong kiểm thử phần mềm nhúng do việc truy cập hạn chế vào phần cứng.
Trình mô phỏng có thể không phản ánh chính xác hoạt động của thiết bị thực tế, dẫn đến việc hiểu sai về hiệu suất hệ thống và khả năng sử dụng của ứng dụng.
3.2.6.2 Phần mềm mã nguồn mở
Phần lớn các thành phần phần mềm nhúng là nguồn mở, không có kiểm tra hoàn chỉnh có sẵn cho nó.
3.2.6.3 Lỗi phần mềm so với phần cứng
Trong quá trình phát triển phần mềm cho phần cứng mới, có thể phát hiện tỷ lệ lỗi phần cứng cao Các khiếm khuyết không chỉ xuất hiện trong phần mềm mà còn có thể liên quan đến phần cứng.
3.2.6.4 Tái tạo các khiếm khuyết
Các khiếm khuyết khó tái tạo trong hệ thống nhúng làm cho quy trình thử nghiệm trở nên phức tạp hơn, yêu cầu đánh giá cao hơn về các lỗi xuất hiện Điều này không chỉ đòi hỏi thu thập nhiều dữ liệu mà còn cần thiết để thay đổi hệ thống nhằm xác định nguyên nhân gốc rễ của lỗi.
3.2.6.5 Cập nhật phần mềm liên tục
Các hệ thống nhúng cần thường xuyên cập nhật phần mềm, bao gồm nâng cấp kernel, sửa lỗi bảo mật và trình điều khiển thiết bị Tuy nhiên, các ràng buộc liên quan đến việc cập nhật phần mềm làm cho việc nhận diện lỗi trở nên khó khăn hơn Điều này cũng nhấn mạnh tầm quan trọng của quy trình xây dựng và triển khai trong quản lý hệ thống nhúng.
Kết luận
Kiểm tra phần mềm nhúng gặp nhiều khó khăn hơn so với phần mềm thông thường, chủ yếu do sự phụ thuộc chặt chẽ vào môi trường phần cứng được chuẩn bị cùng với phần mềm Điều này thường xuyên là yêu cầu cần thiết để thực hiện kiểm thử phần mềm một cách đáng tin cậy Ngoài ra, việc kiểm tra phần mềm mà không có các công cụ tùy chỉnh cũng có thể trở nên rất khó khăn.
Kiểm tra phần mềm tự động là một yếu tố quan trọng cần được thực hiện thường xuyên Phương pháp này giúp rút ngắn thời gian kiểm thử, chỉ mất vài giờ để hoàn thành, từ đó nhanh chóng giải quyết các vấn đề liên quan đến phần mềm của bạn.
Kiểm thử IoT
Giới thiệu về IoT (Internet of Things)
Internet vạn vật (IoT) là một mạng lưới bao gồm các thiết bị, phương tiện, tòa nhà và các thiết bị điện tử khác được kết nối Sự kết nối này cho phép thu thập và trao đổi dữ liệu hiệu quả Bốn thành phần phổ biến của hệ thống IoT bao gồm cảm biến, thiết bị kết nối, nền tảng xử lý dữ liệu và giao diện người dùng.
- IOT là kết nối của các thiết bị nhúng có thể nhận dạng với cơ sở hạ tầng
Internet hiện nay đang bước vào kỷ nguyên của các sản phẩm "Thông minh" nhờ vào IoT, cho phép kết nối và giao tiếp để truyền tải lượng lớn dữ liệu lên đám mây Tuy nhiên, sự phức tạp của phần mềm và hệ thống trong công nghệ IoT có thể tiềm ẩn nhiều lỗi.
Kiểm thử các thiết bị IoT được phân loại chủ yếu dựa trên các yếu tố như Bảo mật, Phân tích, Thiết bị, Mạng, Bộ xử lý, Hệ điều hành, Nền tảng và Tiêu chuẩn.
Kiểm thử IoT
Kiểm thử IoT là quy trình kiểm tra các thiết bị Internet of Things, trong đó kiểm thử hộp xám được khuyến nghị sử dụng Phương pháp này giúp thiết kế các trường hợp kiểm thử một cách hiệu quả, đảm bảo chất lượng và hiệu suất của các thiết bị IoT.
Mục đích của kiểm thử IoT là cung cấp dịch vụ tốt hơn và nhanh hơn, đáp ứng nhu cầu truy cập, tạo, sử dụng và chia sẻ dữ liệu từ bất kỳ thiết bị nào Kiểm thử IoT rất quan trọng để đảm bảo rằng người dùng có trải nghiệm cải thiện trên các thiết bị IoT kết nối, đồng thời cung cấp cái nhìn sâu sắc và khả năng kiểm soát tốt Tuy nhiên, nếu không có kế hoạch kiểm tra, việc đo lường các đặc tính cần kiểm tra sẽ gặp khó khăn, dẫn đến việc lỗi có thể không được phát hiện dễ dàng.
- Xác thực thành phần (Components Validation)
- Xác thực chức năng (Function Validation)
- Xác thực điều kiện (Conditioning Validation)
- Xác thực hiệu năng (Performance Validation)
- Xác thực bảo mật và dữ liệu (Security and Data Validation)
- Xác thực cổng (Gateway Validation)
- Xác thực phân tích (Analytics Validation)
- Xác thực thông tin liên lạc (Communication Validation)
4.2.3 Các loại kiểm thử IoT
4.2.3.1 Kiểm thử khả năng sử dụng:
Việc kiểm thử khả năng sử dụng của hệ thống trong thử nghiệm IoT là rất quan trọng, vì người dùng sử dụng nhiều thiết bị với hình dạng và yếu tố hình thức khác nhau Hơn nữa, cảm nhận của mỗi người dùng cũng khác nhau, điều này ảnh hưởng đến trải nghiệm tổng thể.
4.2.3.2 Kiểm thử khả năng tương thích:
Hệ thống IOT cho phép kết nối nhiều thiết bị với cấu hình phần mềm và phần cứng đa dạng, tạo ra sự kết hợp phong phú Vì vậy, việc kiểm thử tính tương thích trong hệ thống IOT trở nên rất quan trọng.
4.2.3.3 Kiểm thử độ tin cậy và khả năng mở rộng: Độ tin cậy và khả năng mở rộng rất quan trọng đối với việc triển khai hoạt động thử nghiệm IOT liên quan đến việc mô phỏng các cảm biến bằng cách sử dụng các công cụ ảo hóa và công nghệ.
4.2.3.4 Kiểm thử tính toàn vẹn của dữ liệu: Điều quan trọng là phải kiểm thử tính toàn vẹn của dữ liệu trong kiểm thử IOT vì nó liên quan đến lượng lớn dữ liệu và ứng dụng của nó.
Trong môi trường IoT, việc xác thực người dùng là rất quan trọng do số lượng lớn người dùng truy cập vào dữ liệu Cần thiết phải có các biện pháp kiểm soát quyền riêng tư dữ liệu như một phần của quy trình thử nghiệm bảo mật.
Kiểm thử hiệu suất là quan trọng để tạo ra cách tiếp cận chiến lược để phát triển và thực hiện kế hoạch kiểm thử IOT.
4.2.4 Các khó khăn, thách thức của kiểm thử IoT
- Cần kiểm tra cả mạng và liên lạc nội bộ
- Bảo mật là một vấn đề lớn trong nền tảng IoT vì tất cả các tác vụ được thực hiện thông qua mạng
- Sự phức tạp của phần mềm và hệ thống có thể ẩn chứa lỗi trong công nghệ
- Cần cân nhắc về tài nguyên như hạn chế về bộ nhớ, công suất xử lý, băng thông, thời lượng pin, v.v
4.2.5 Các công cụ kiểm thử IoT
Shodan là một công cụ kiểm thử IoT giúp phát hiện các thiết bị kết nối với internet Nó cho phép theo dõi tất cả các máy tính có thể truy cập trực tiếp từ internet.
Thingful là một công cụ tìm kiếm dành cho IoT, cho phép tương tác an toàn giữa hàng triệu đối tượng qua internet Công cụ này không chỉ kiểm thử IoT mà còn giúp kiểm soát cách dữ liệu được sử dụng, từ đó trao quyền cho người dùng trong việc đưa ra các quyết định có giá trị.