KIỂM THỬ PHẦN MỀM , NGHIÊN CỨU CÁC KỸ THUẬT KIỂM THỬ VỚI CÁC HỆ THỐNG WEB THƯƠNG MẠI ĐIỆN TỬ,là một quá trình kiểm tra phần mềm của một ứng dụng ngân hàng về chức năng, hiệu suất và bảo mật. Mục đích chính của việc kiểm tra ứng dụng ngân hàng là đảm bảo rằng tất cả các hoạt động và chức năng của phần mềm ngân hàng chạy trơn tru mà không có lỗi và nó vẫn được bảo vệ.
Banking Domain Testing
Kiểm tra ứng dụng ngân hàng là quá trình đánh giá chức năng, hiệu suất và bảo mật của phần mềm Mục tiêu chính là đảm bảo mọi hoạt động và chức năng của ứng dụng diễn ra mượt mà, không có lỗi, đồng thời duy trì mức độ bảo vệ cao.
Lĩnh vực BFSI (Ngân hàng, Dịch vụ Tài chính và Bảo hiểm) là ngành tiêu thụ dịch vụ CNTT lớn nhất, với ứng dụng ngân hàng trực tiếp xử lý dữ liệu tài chính nhạy cảm Để đảm bảo mọi hoạt động của phần mềm ngân hàng diễn ra trơn tru và không có lỗi, các chức năng như chuyển và gửi tiền, yêu cầu số dư, lịch sử giao dịch và rút tiền cần được thực hiện một cách chính xác Thử nghiệm ứng dụng ngân hàng là cần thiết để bảo vệ các hoạt động này khỏi các mối đe dọa từ tin tặc.
Domain Testing là gì?
Domain Testing (kiểm thử tên miền) là một loại của Functional Testing.
Kỹ thuật kiểm thử phần mềm này thực hiện bằng cách đưa ra các đầu vào và đánh giá các đầu ra Mục tiêu là kiểm tra đầu ra của hệ thống với số lượng đầu vào tối thiểu, nhằm đảm bảo rằng hệ thống không chấp nhận các giá trị đầu vào không hợp lệ.
Một trong những phương pháp quan trọng của kiểm thử White Box là Kiểm thử Miền (Domain Testing) Mục tiêu chính của Kiểm thử Miền là xác định xem hệ thống có chấp nhận đầu vào trong phạm vi hợp lệ hay không và cung cấp đầu ra theo yêu cầu Đồng thời, phương pháp này cũng xác minh rằng hệ thống không chấp nhận các yếu tố đầu vào, điều kiện và chỉ số nằm ngoài phạm vi được chỉ định hoặc hợp lệ.
Tại sao kiến thức miền lại quan trọng?
Kiến thức về miền là tinh túy để kiểm tra bất kỳ sản phẩm phần mềm nào và nó có những lợi ích riêng như:
It reduces the traning time
It helps in quick defect tracking
It gives good idea on UI features and back – end processing
It gives good hold over workflow.
It helps to understands easily the technical terminology
Kiến Thức Miền Ngân hàng – Giới thiệu
Các khái niệm tên miền ngân hàng là rất lớn, và về cơ bản nó được đặc trưng thành hai lĩnh vực.
1 Lĩnh vực ngân hàng truyền thống
2 Lĩnh vực ngân hàng dựa trên dịch vụ
Dưới đây là bảng các dịch vụ mà hai phân ngành ngân hàng này bao gồm
Lĩnh vực ngân hàng truyền thống - Ngân hàng lõi
Lĩnh vực ngân hàng dựa trên dịch vụ - Lõi
- Kênh giao hàng của khách hàng/ Giao hàng front end
Đặc điểm của ứng dụng ngân hàng
Các giai đoạn thử nghiệm trong thử nghiệm các ứng dụng ngân hàng 8 3 Trường hợp thử nghiệm mẫu cho ứng dụng đăng nhập Net Banking 14 4 Những thách thức trong việc thử nghiệm tên miền Ngân hàng & Giảm thiểu của chúng
Để thử nghiệm các ứng dụng ngân hàng, các giai đoạn thử nghiệm khác nhau bao gồm
Phân tích yêu cầu là quá trình do các nhà phân tích kinh doanh thực hiện, trong đó các yêu cầu cho một ứng dụng ngân hàng cụ thể được thu thập và ghi lại một cách chi tiết.
During the requirement review phase, quality analysts, business analysts, and development leads collaborate to examine the requirement gathering document This review process ensures that the requirements are thoroughly cross-checked to prevent any negative impact on the workflow.
Business Requirements Documentation: Business requirements documents are prepared by quality analysts in which all reviewed business requirements are covered
Kiểm thử cơ sở dữ liệu là một phần thiết yếu trong quá trình thử nghiệm ứng dụng ngân hàng, nhằm đảm bảo tính toàn vẹn của dữ liệu, kiểm tra khả năng tải và di chuyển dữ liệu, cũng như xác thực các chức năng và quy trình lưu trữ.
Kiểm thử tích hợp: Trong thử nghiệm tích hợp , tất cả các thành phần được phát triển đều được tích hợp và xác nhận
Trong giai đoạn kiểm tra chức năng, các hoạt động kiểm thử phần mềm như chuẩn bị test, xem xét các trường hợp thử nghiệm và thực hiện các trường hợp thử nghiệm sẽ được tiến hành.
Kiểm tra bảo mật là quá trình đảm bảo phần mềm không có lỗ hổng bảo mật Nhóm QA cần thiết lập cả kịch bản thử nghiệm tiêu cực và dương tính để phát hiện các lỗ hổng trước khi có cá nhân trái phép truy cập vào hệ thống Để ngăn chặn các cuộc tấn công, ngân hàng nên áp dụng xác thực truy cập nhiều lớp, chẳng hạn như mật khẩu một lần Các công cụ tự động hóa như IBM AppScan và HP WebInspect được sử dụng để kiểm tra bảo mật, trong khi các công cụ kiểm tra như Proxy Sniffer, Paros proxy và HTTP Watch hỗ trợ trong quá trình này.
Kiểm tra khả năng sử dụng là rất quan trọng để đảm bảo rằng mọi người, bất kể khả năng của họ, đều có thể sử dụng hệ thống một cách bình thường Chẳng hạn, các máy ATM được thiết kế với tính năng hỗ trợ thính giác và chữ nổi, giúp người khuyết tật tiếp cận dễ dàng hơn.
Kiểm tra chấp nhận người dùng là giai đoạn thử nghiệm cuối cùng do người dùng cuối thực hiện, nhằm đảm bảo rằng ứng dụng tuân thủ các kịch bản trong thế giới thực.
2 Các giai đoạn điển hình liên quan đến việc thử nghiệm các ứng dụng ngân hàng
Các giai đoạn điển hình liên quan đến việc thử nghiệm các ứng dụng ngân hàng được thể hiện trong quy trình làm việc dưới đây.
1) Requirement Gathering - Thu thập yêu cầu:
Giai đoạn thu thập yêu cầu bao gồm việc tạo ra các tài liệu liên quan đến yêu cầu của ứng dụng, chẳng hạn như Tài liệu đặc tả chức năng.
Các yêu cầu được thu thập dựa trên nhu cầu của khách hàng và được biên soạn thành tài liệu bởi các chuyên gia ngân hàng hoặc chuyên gia phân tích tài liệu Những tài liệu này có thể bao gồm các thông số kỹ thuật hoặc các trường hợp sử dụng cụ thể.
Các chuyên gia viết yêu cầu cho nhiều chủ đề khác nhau, trong đó ngân hàng hoạt động trên nhiều lĩnh vực Một ứng dụng ngân hàng hoàn chỉnh sẽ tích hợp tất cả các lĩnh vực này để đáp ứng nhu cầu của người dùng.
Ví dụ: Ứng dụng ngân hàng có thể có các module riêng cho hoặc động
Chuyển tiền, Thẻ tín dụng, Báo cáo, Tài khoản cho vay, Thanh toán hóa đơn, Thương mại v.v
2) Requirement Review - Đánh giá yêu cầu:
Sản phẩm được bàn giao từ quá trình thu thập yêu cầu sẽ được đánh giá và xem xét bởi tất cả các bên liên quan, bao gồm các QA và các lãnh đạo của đội phát triển.
Các nhà phân tích nghiệp vụ ngang hàng (Peer Business Analysts).
Họ sẽ tiến hành kiểm tra chéo để đảm bảo không có luồng xử lý nghiệp vụ hiện tại hay luồng công việc mới nào bị vi phạm Tất cả các yêu cầu sẽ được xác minh và xác nhận, đồng thời các hoạt động theo dõi và yêu cầu sửa đổi tài liệu sẽ được thực hiện một cách thống nhất.
3) Business Scenario Preparations - Chuẩn bị Kịch bản nghiệp vụ:
Trong giai đoạn này, bộ phận QA tiếp nhận các kịch bản nghiệp vụ từ tài liệu yêu cầu, bao gồm tài liệu đặc tả chức năng và các use cases Các kịch bản nghiệp vụ được xây dựng để đảm bảo rằng tất cả các yêu cầu kinh doanh đều được bao phủ, phản ánh đầy đủ các yêu cầu trong kịch bản nghiệp vụ.
Kịch bản nghiệp vụ là những kịch bản cấp cao không có bước chi tiết, được các nhà phân tích nghiệp vụ (BAs) xem xét để đảm bảo tất cả các yêu cầu nghiệp vụ được đáp ứng Việc xem xét kịch bản ở cấp độ cao giúp các BA dễ dàng hơn so với việc phân tích các trường hợp kiểm tra chi tiết ở mức độ thấp.
4) Functional Testing - Kiểm tra chức năng :
Trong giai đoạn này, thử nghiệm chức năng được thực hiện và các hoạt động kiểm thử phần mềm thông thường được thực hiện như:
Trong giai đoạn này, đầu vào là các Business Scenario và đầu ra là các test case chi tiết Từ một Business Scenario, việc áp dụng các kỹ thuật viết test case sẽ tạo ra các positive test cases và negative test cases tương ứng Thông thường, các công cụ được sử dụng trong giai đoạn này bao gồm
Microsoft Excel, Test Director hoặc Quality Center.
Review đánh giá test case:
Test case sau khi được tạo ra thì sẽ được review chéo nhau bởi các QA.
Thực hiện chạy test case
Thách thức
Truy cập vào dữ liệu sản xuất và sao chép nó dưới dạng dữ liệu thử nghiệm, để thử nghiệm là một thách thức
Đảm bảo rằng dữ liệu thử nghiệm đáp ứng các yêu cầu và hướng dẫn tuân thủ quy định
Để duy trì tính bảo mật dữ liệu, cần áp dụng các kỹ thuật như che giấu dữ liệu, sử dụng dữ liệu thử nghiệm tổng hợp và tích hợp hệ thống thử nghiệm.
Thách thức lớn nhất trong việc kiểm tra hệ thống ngân hàng là quá trình chuyển đổi từ hệ thống cũ sang hệ thống mới, đặc biệt là trong giai đoạn thử nghiệm.
Đảm bảo Thử nghiệm Di chuyển Dữ liệu hoàn tất
Đảm bảo rằng các trường hợp kiểm tra hồi quy được thực hiện trên cả hệ thống cũ và mới, bao gồm tất cả các thói quen, thủ tục và kế hoạch Bên cạnh đó, cần xác định cách thức dữ liệu sẽ được lấy, tải lên và chuyển sang hệ thống mới sau khi thực hiện di chuyển.
Có thể có những trường hợp các yêu cầu không được ghi nhận tốt và có thể dẫn đến những lỗ hổng chức năng trong kế hoạch thử nghiệm
Nhiều yêu cầu phi chức năng không được ghi lại đầy đủ và người kiểm tra không biết có nên kiểm tra hay không.
Bài kiểm tra nên tham gia vào dự án ngay từ các giai đoạn Phân tích yêu cầu và nên chủ động xem xét các Yêu cầu kinh doanh
Điểm quan trọng nhất là kiểm tra xem hệ thống nói trên có tuân theo các chính sách và thủ tục mong muốn hay không.
Việc kiểm tra tuân thủ hoặc chính sách quy định phải được thực hiện
Phạm vi và thời gian tăng lên khi ứng dụng ngân hàng được tích hợp với các ứng dụng khác như internet hoặc mobile banking
Đảm bảo ngân sách thời gian cho Thử nghiệm tích hợp được hạch toán nếu ứng dụng ngân hàng của bạn có nhiều giao diện bên ngoài
Sự làm dịu
Trong một ứng dụng ngân hàng, có nhiều module khác nhau như chuyển khoản, thanh toán hóa đơn và tiền gửi Do đó, nhiều thành phần được phát triển và trong quá trình thử nghiệm tích hợp, tất cả các thành phần này được kết hợp và xác nhận.
VII Usability Testing - Kiểm tra khả năng sử dụng###
Một ứng dụng ngân hàng cần phục vụ đa dạng khách hàng, trong đó có những người có thể thiếu kỹ năng và nhận thức cần thiết để thực hiện các giao dịch Do đó, việc kiểm tra và thiết kế ứng dụng sao cho đơn giản và hiệu quả là rất quan trọng, nhằm tạo điều kiện thuận lợi cho tất cả các nhóm khách hàng Khi giao diện trở nên dễ sử dụng hơn, số lượng khách hàng sử dụng ứng dụng sẽ tăng lên, từ đó mang lại lợi ích cho nhiều người.
VIII Performance Testing - Kiểm tra hiệu suất
Trong những khoảng thời gian đặc biệt như ngày trả lương, cuối năm tài chính, ngày giảm giá mua sắm và mùa lễ hội, lưu lượng truy cập trên ứng dụng có thể tăng đột biến Vì vậy, việc kiểm tra hiệu năng một cách kỹ lưỡng là cần thiết để đảm bảo khách hàng không gặp phải vấn đề về hiệu suất.
Một ví dụ điển hình về sự thất bại trong hiệu suất ngân hàng là sự cố của NatWest và RBS vào ngày thứ Hai, khi khách hàng sử dụng thẻ ghi nợ và thẻ tín dụng bị từ chối giao dịch tại nhiều cửa hàng trong nước.
Integration testing - Thử nghiệm tích hợp
Trong một ứng dụng ngân hàng, có nhiều module khác nhau như chuyển khoản, thanh toán hóa đơn và tiền gửi Do đó, nhiều thành phần được phát triển và trong quá trình thử nghiệm tích hợp, tất cả các thành phần này được kết hợp và xác nhận.
Usability Testing - Kiểm tra khả năng sử dụng###
Một ứng dụng ngân hàng cần phục vụ đa dạng khách hàng, trong đó có những người có thể thiếu kỹ năng và nhận thức cần thiết để thực hiện các giao dịch Do đó, việc kiểm tra và thiết kế ứng dụng sao cho đơn giản và hiệu quả là rất quan trọng, nhằm tạo điều kiện thuận lợi cho tất cả các nhóm khách hàng Khi giao diện trở nên dễ sử dụng hơn, số lượng khách hàng sử dụng ứng dụng sẽ tăng lên, từ đó mang lại lợi ích cho nhiều người.
Performance Testing - Kiểm tra hiệu suất
Trong những khoảng thời gian đặc biệt như ngày trả lương, cuối năm tài chính, ngày giảm giá mua sắm và mùa lễ hội, lưu lượng truy cập trên ứng dụng có thể tăng đột biến Vì vậy, việc kiểm tra hiệu năng kỹ lưỡng là cần thiết để đảm bảo khách hàng không gặp phải vấn đề về hiệu suất.
Một ví dụ điển hình về sự thất bại trong hiệu suất ngân hàng là sự cố của NatWest và RBS vào ngày thứ Hai, khi khách hàng sử dụng thẻ ghi nợ và thẻ tín dụng không thể thực hiện giao dịch tại nhiều cửa hàng trong nước.
User Acceptance Testing - Kiểm thử chấp nhận Người dùng
Người dùng cuối tham gia vào việc sử dụng thử ứng dụng để đảm bảo rằng nó đáp ứng các kịch bản thực tế và sẽ được chấp nhận khi phát hành.
Trong kịch bản hiện nay đa số các dự án ngân hàng đang sử dụng : Phương pháp Agile / Scrum, RUP và Continuous Integration, và các công cụ như
VSTS và Rational Tools của Microsoft để thực hiện thử nghiệm này.
Như chúng ta đã đề cập ở trên về RUP, RUP là viết tắt của Rational Unified
Process là phương pháp phát triển phần mềm lặp đi lặp lại do IBM giới thiệu, bao gồm bốn giai đoạn trong đó các hoạt động phát triển và thử nghiệm được thực hiện.
iv) Chuyển tiếp RUP liên quan rộng rãi đến các công cụ IBM Rational.
Trong bài viết này, chúng ta đã khám phá mức độ phức tạp của ứng dụng ngân hàng và các giai đoạn thử nghiệm điển hình liên quan Bên cạnh đó, chúng ta cũng đã thảo luận về các xu hướng hiện tại trong ngành công nghiệp IT, bao gồm các phương pháp và công cụ phát triển phần mềm hỗ trợ Hy vọng rằng bài viết này sẽ cung cấp cho bạn cái nhìn cơ bản về quy trình kiểm thử ứng dụng ngân hàng.
kiểm tra cổng thanh toán
Hệ thống cổng thanh toán
1 Hệ thống thanh toán là gì?
Hệ thống cổng thanh toán là dịch vụ thương mại điện tử cho phép chấp nhận thanh toán bằng thẻ tín dụng cho các giao dịch mua sắm trực tuyến.
Các cổng thanh toán bảo vệ thông tin thẻ tín dụng bằng cách mã hóa các dữ liệu nhạy cảm như số thẻ và thông tin chủ tài khoản Điều này đảm bảo rằng thông tin được truyền tải an toàn giữa khách hàng và người bán.
2 Payment Gateway Terminology - Thuật ngữ cổng thanh toán
1) Merchant - Người bán: Là cá nhân hoặc công ty bán sản phẩm hoặc dịch vụ Flipkart, Amazon, eBay là một số ví dụ về merchant.
2) Credit Card - Thẻ tín dụng: Là một chiếc thẻ nhựa có thể được sử dụng để mua sản phẩm hoặc dịch vụ thông qua tài khoản tín dụng Thẻ này có số thẻ gồm 16 số, ngày hết hạn, hình ba chiều, dải từ, bảng chữ ký và số
Số xác nhận thẻ (CVV) Mặt trước thẻ:
Ngân hàng thu nhận là một tổ chức tài chính giữ tài khoản ngân hàng của người bán, cho phép họ chấp nhận và xử lý các giao dịch thẻ tín dụng và thẻ ghi nợ tại cửa hàng.
4) Issuing Bank - Ngân hàng phát hành: Là tổ chức tài chính phát hành thẻ ghi nợ hoặc thẻ tín dụng của khách hàng Bất cứ khi nào khách hàng sử dụng thẻ tín dụng hoặc thẻ ghi nợ để mua hàng, ngân hàng phát hành chấp nhận hoặc từ chối giao dịch dựa trên tình trạng tài khoản của chủ thẻ và chuyển thông tin đó đến Ngân hàng nhận.
Ví dụ: Giao dịch sẽ bị từ chối nếu ngày hết hạn của thẻ không chính xác hoặc nếu số tiền mua nhiều hơn giới hạn tín dụng thẻ, v.v
5) Transaction - Giao dịch: Kết thúc để kết thúc quá trình thông qua đó bên bán nhận được tiền cho một giao dịch với khách hàng.
6) Authorization - Ủy quyền: Được yêu cầu khi khách hàng mua hàng.
Giấy phép do ngân hàng phát hành xác nhận tính hợp lệ của chủ thẻ và khả năng thanh toán Sau khi hoàn tất, số tiền sẽ được giữ lại và số dư sẽ được khấu trừ từ giới hạn tín dụng của khách hàng, nhưng chưa được chuyển vào tài khoản của người bán.
Capture là quá trình quan trọng trong giao dịch thành công, nơi số tiền thanh toán được chấp nhận từ đơn vị phát hành Trong bước này, người bán thu thập thông tin thanh toán của khách hàng và gửi yêu cầu thanh toán đến công ty thanh toán Công ty này sẽ sử dụng thông tin để khởi động chuyển khoản giữa tài khoản thẻ của khách hàng và tài khoản ngân hàng của người bán.
Sơ đồ dòng sau đây tóm tắt flow hoàn chỉnh từ thời điểm khách hàng đặt hàng cho đến khi đơn hàng thành công hoặc bị từ chối.
Nếu khách hàng muốn hủy đơn đặt hàng, sau đây là flow hủy đơn hàng:
Sự khác biệt giữa void - vô hiệu và refund - trả lại phụ thuộc vào việc liệu giao dịch đó đã thanh toán thành công hay không.
Một khoản thanh toán chưa thanh toán có thể bị hủy, dẫn đến việc số tiền giữ được ghi có trở lại tài khoản của chủ thẻ Nếu giao dịch đã được thanh toán hoặc đang trong trạng thái giữ tiền, khoản tiền sẽ được hoàn lại, tức là số tiền sẽ được trừ từ tài khoản của người bán và ghi có vào tài khoản của chủ thẻ.
Thử nghiệm cổng thanh toán
1 Thử nghiệm Cổng thanh toán là thử nghiệm Cổng thanh toán trong một hệ thống để người dùng mua hàng và giao dịch trực tuyến.
Mục đích của thử nghiệm cổng thanh toán là đảm bảo tính bảo mật, độ tin cậy và hiệu suất của hệ thống Thử nghiệm này giúp mã hóa và bảo vệ các chi tiết thanh toán giữa người dùng và người bán, đồng thời mang lại trải nghiệm thanh toán mượt mà cho khách hàng.
I.1 Các loại hệ thống cổng thanh toán
Cổng thanh toán được lưu trữ :
Hệ thống cổng thanh toán lưu trữ hướng khách hàng từ trang thương mại điện tử đến liên kết cổng trong quá trình thanh toán Sau khi thanh toán hoàn tất, khách hàng sẽ được đưa trở lại trang thương mại điện tử Đối với loại hình thanh toán này, không cần id người bán; ví dụ về các cổng thanh toán lưu trữ bao gồm PayPal, Noche và WorldPay.
Cổng thanh toán được chia sẻ :
Trong cổng thanh toán dùng chung, khách hàng được dẫn đến trang thanh toán mà không rời khỏi trang thương mại điện tử Khi họ điền thông tin thanh toán, quá trình thanh toán sẽ tiếp tục một cách dễ dàng và thuận tiện Ví dụ về cổng thanh toán này bao gồm eWay và Stripe.
I.2 Các loại thử nghiệm cho miền thanh toán
Kiểm tra chức năng của cổng thanh toán là hành động quan trọng nhằm xác minh xem ứng dụng có hoạt động đúng như mong đợi hay không, bao gồm việc xử lý đơn đặt hàng, tính toán và bổ sung VAT theo quy định của từng quốc gia.
Tích hợp : Thử nghiệm tích hợp với dịch vụ thẻ tín dụng của bạn.
Hiệu suất được xác định qua các chỉ số khác nhau, bao gồm số lượng người dùng truy cập vào các cổng trong một ngày cụ thể, với mục tiêu tối đa hóa số lượng người dùng đồng thời chuyển đổi.
Bảo mật : Bạn cần thực hiện thẻ bảo mật sâu cho Cổng thanh toán.
Kiểm tra Cổng thanh toán trước khi bắt đầu thử nghiệm
Thu thập dữ liệu kiểm tra thích hợp cho số thẻ tín dụng giả cho thợ cả, visa, master, v.v.
Thu thập thông tin cổng thanh toán như Google Wallet, Paypal hoặc những thứ khác
Thu thập tài liệu cổng thanh toán có mã lỗi
Hiểu phiên và các thông số được chuyển qua ứng dụng và cổng thanh toán
Hiểu và kiểm tra lượng thông tin liên quan được chuyển qua chuỗi truy vấn hoặc biến hoặc phiên
Cùng với ngôn ngữ cổng thanh toán, hãy kiểm tra ngôn ngữ của ứng dụng
Dưới các cài đặt khác nhau của cổng thanh toán như định dạng tiền tệ, dữ liệu người đăng ký được thu thập.
Các trường hợp kiểm tra cổng thanh toán
Trong quá trình thanh toán, hãy cố gắng thay đổi ngôn ngữ cổng thanh toán
Sau khi thanh toán thành công, kiểm tra tất cả các thành phần cần thiết, xem nó có được truy xuất hay không
Kiểm tra điều gì sẽ xảy ra nếu cổng thanh toán ngừng phản hồi trong quá trình thanh toán
Trong quá trình thanh toán, hãy kiểm tra xem điều gì sẽ xảy ra nếu phiên kết thúc
Trong quá trình thanh toán, hãy kiểm tra xem điều gì xảy ra trong chương trình phụ trợ
Kiểm tra điều gì sẽ xảy ra nếu quá trình thanh toán không thành công
Kiểm tra các mục cơ sở dữ liệu xem chúng có lưu trữ chi tiết thẻ ứng dụng hay không
Trong quá trình thanh toán, hãy kiểm tra các trang lỗi và trang bảo mật
Kiểm tra cài đặt của trình chặn cửa sổ bật lên và xem điều gì sẽ xảy ra nếu trình chặn cửa sổ bật lên được bật và tắt
Giữa cổng thanh toán và các trang đệm kiểm tra ứng dụng
Kiểm tra khi thanh toán thành công, mã thành công được gửi đến ứng dụng và trang xác nhận được hiển thị cho người dung
Xác minh xem giao dịch xử lý ngay lập tức hay quá trình xử lý được giao cho ngân hàng của bạn
Sau khi giao dịch thành công, hãy kiểm tra xem cổng thanh toán có quay lại ứng dụng của bạn không
Kiểm tra tất cả các định dạng và thông báo khi quá trình thanh toán thành công
Trừ khi bạn không có biên lai ủy quyền từ cổng thanh toán, nếu không hàng hóa sẽ không được giao
Thông báo cho chủ sở hữu về bất kỳ giao dịch nào được xử lý qua e-mail Mã hóa nội dung của thư
Kiểm tra định dạng số tiền với định dạng tiền tệ
Kiểm tra xem từng tùy chọn thanh toán có thể chọn được không
Kiểm tra xem mỗi tùy chọn thanh toán được liệt kê có mở tùy chọn thanh toán tương ứng theo đặc điểm kỹ thuật hay không
Xác minh xem cổng thanh toán có mặc định cho tùy chọn thẻ ghi nợ / thẻ tín dụng mong muốn hay không
Xác minh tùy chọn mặc định cho thẻ ghi nợ hiển thị menu thả xuống lựa chọn thẻ
IV Checklist và Testcase kiểm tra cổng thanh toán
Giống như bất kỳ ứng dụng nào khác, kiểm thử payment processor liên quan đến việc lập kế hoạch kiểm thử phù hợp.
Checklist sau có thể hữu ích cho tester và có thể được sử dụng làm tài liệu tham khảo:
1 Thiết lập payment processor sandbox (Sandbox là một môi trường thử nghiệm khép kín, được xây dựng để hoạt động tương tự môi trường sử dụng ngoài thực tế Tại đây có thể bắt đầu xây dựng và theo dõi quá trình hoạt động của ứng dụng mà không ảnh hưởng tới bất kì tài khoản thanh toán thực tế nào Môi trường này sẽ hỗ trợ cho người phát triển phần mềm tiếp cận, làm thử và kiểm tra ứng dụng mà không làm ảnh hưởng đến bất kỳ đối tượng nào trong thực tế Để từ đó, họ đánh giá, so sánh và quyết định lựa chọn dịch vụ mà họ nên tích hợp khi triển khai thực ứng dụng thực sự)
2 Thu thập số thẻ loại tín dụng dùng để thử nghiệm với mục đích kiểm tra các loại thẻ tín dụng khác nhau Ví dụ, thông tin cho bộ xử lý thanh toán Braintree có thể được tìm thấy tại Braintree payments.
3 Xác minh hành vi của ứng dụng khi giao dịch thành công.
4 Sau khi giao dịch thành công, hãy xác minh nếu cổng thanh toán trả về ứng dụng của bạn để hiển thị một số thông báo giao dịch / xác nhận thành công.
5 Xác minh rằng khách hàng nhận được một số thông báo xác nhận giao dịch như Email xác nhận đặt hàng, v.v nếu giao dịch thành công.
6 Kiểm tra những gì sẽ xảy ra nếu việc thanh toán thất bại hoặc bộ xử lý thanh toán ngừng phản hồi thì có bất kỳ thông báo lỗi nào không?
7 Xác minh hành vi ứng dụng với trình chặn cửa sổ bật lên và tắt của trình duyệt Điều này có thể hữu ích nếu bất kỳ thông báo xác nhận nào đang được hiển thị trong cửa sổ bật lên.
8 Xác minh các thiết lập bảo mật và phòng ngừa gian lận khác nhau.
Nếu thông tin thanh toán của khách hàng không khớp với địa chỉ mà ngân hàng phát hành đã cung cấp, bất kỳ sự không phù hợp nào cũng sẽ dẫn đến việc giao dịch bị từ chối.
9 Xác minh các thông tin giao dịch trong cơ sở dữ liệu nếu tester có quyền truy cập vào cơ sở dữ liệu ứng dụng.
10.Kiểm tra những gì sẽ xảy ra khi phiên truy cập của khách hàng hết hạn.
11.Kiểm tra bảng điều khiển trong suốt quá trình giao dịch và báo cáo bất kỳ lỗi điều khiển được quan sát thấy.
12.Xác minh rằng giao dịch đó được thực hiện trên một kênh an toàn.
Ví dụ: các trang thanh toán có thể là HTTPS so với phần còn lại của trang web là các trang HTTP.
13.Xác minh rằng loại tiền tệ của bộ xử lý thanh toán được thiết lập chính xác.
Nếu ứng dụng hoặc trang web là của một công ty hoặc nhà bán lẻ tại Canada, thì bộ xử lý thanh toán cần được cấu hình để chấp nhận đồng tiền CAD.
Nếu ứng dụng cung cấp nhiều phương thức thanh toán như thẻ tín dụng và PayPal, thì cần phải kiểm tra từng phương thức thanh toán một cách riêng biệt từ đầu đến cuối.
Xác minh rằng số tiền hoàn lại hoặc số tiền vô hiệu từ cổng quản trị bộ xử lý thanh toán phải tương đương với số tiền giao dịch Trong mọi trường hợp, số tiền hoàn lại hoặc số tiền còn thiếu không được vượt quá số tiền giao dịch.
Những điều cần cân nhắc trước khi mua gói Gateway
Nếu bạn đã mua một gói giỏ hàng, hãy tìm hiểu về khả năng tương thích của nó
Nếu gói cổng mua sắm đến hạn, hãy hỏi nhà cung cấp cổng thanh toán để biết danh sách các ứng dụng được hỗ trợ
Cổng phải cung cấp Bảo vệ Hệ thống Xác minh Địa chỉ
Tìm hiểu các loại bảo vệ giao dịch đang được cung cấp
Kiểm tra xem loại thẻ ghi nợ hoặc thẻ tín dụng nào được chấp nhận bởi cổng thanh toán bạn đã chọn
Kiểm tra phí giao dịch mà cổng thanh toán thu
Kiểm tra xem các cổng thu tiền ngay trên biểu mẫu hay chuyển trực tiếp đến trang khác để hoàn tất giao dịch mua
VI Một số tip hữu ích
1 Tìm hiểu xem có thể sử dụng môi trường sandbox miễn phí của Payment gateway cho mục đích dùng thử hay không Việc có sẵn một môi trường giả lập sẽ rất hữu ích và cung cấp cho team có thêm nhiều lựa chọn để tùy
2 Đảm bảo giao dịch được kiểm tra trong suốt quá trình Trong các dự án của chúng tôi, chúng tôi đã kiểm tra và tìm ra nhiều lỗi liên quan đến việc thu thập dữ liệu và luồng dữ liệu từ ứng dụng đến cổng thanh toán Một số lỗi thường gặp như:
Tên khách hàng (người mua hàng) không được lấy đúng
Ngày hết hạn thẻ tín dụng của khách hàng bị ghi sai dẫn đến việc các ngân hàng phát hành từ chối thanh toán do thông tin thẻ không chính xác.
Giao dịch trùng lặp hiển thị trong Payment Processor.
3 Nghiên cứu về các giới hạn của môi trường giả lập Payment gateway Ví dụ: Authorize.net chỉ hỗ trợ một đơn vị tiền tệ cho mỗi môi trường, nên nếu muốn test trên nhiền đồng tiền, ta cần phải thiết lập nhiều môi trường khác nhau Vì lý do đó, ta sẽ không bao giờ test được thực tế hệ thống sẽ phản ứng như thế nào với những giao dịch có quy đổi tiền tệ nếu sử dụng lài khoản Live Authorize.net
4 Nếu thanh toán không thành công trong quá trình giao dịch vì bất kỳ lý do nào, cần đưa ra một thông báo phù hợp cho khách hàng Bất kỳ thông báo lỗi nào mang tính kỹ thuật như 'Object not set to instance' hoặc '404 error' có thể gây nhầm lẫn cho khách hàng và ảnh hưởng đến trải nghiệm người dùng Một thông báo chung chung kiểu như "Có sự cố sảy ra trong giao dịch, xin hay liên hệ đến số 1-800-800-8000" cũng là một ý hay.
5 Với mục đích verify sau khi release sản phẩm, phần mềm client cần được tạo một tài khoản live payment processor, cài đặt Merchant ID Tùy thuộc vào payment processor sử dụng, có thể mất từ 2 ngày đến vài tuần để cài đặt một tài khoản Việc này nên được thông báo bởi project manager đến khách hàng về khoảng thời gian cần thiết để cài đặt tài khoản trước khi application và phần tích hợp payment processor có thể sử dụng được.
Kiểm tra thương mại điện tử
Thử nghiệm thương mại điện tử là gì?
Thử nghiệm ứng dụng Thương mại điện tử giúp ngăn ngừa lỗi và nâng cao giá trị sản phẩm bằng cách đảm bảo sự phù hợp với yêu cầu của khách hàng.
Mục tiêu của thử nghiệm là đảm bảo :
Độ tin cậy của phần mềm
Hiệu suất tối ưu và sử dụng công suất
Thiết lập hệ thống thương mại điện tử là một quá trình phức tạp, phụ thuộc vào nhiều yếu tố của thị trường Để đảm bảo tính toàn vẹn của hệ thống, việc kiểm tra là điều cần thiết.
Các loại thử nghiệm cho hệ thống thương mại điện tử
Loại thử nghiệm Quá trình kiểm tra
(Tính tương thích của trình duyệt web)
Thiếu hỗ trợ cho các trình duyệt ban đầu
Tiện ích mở rộng cụ thể của trình duyệt
Kiểm tra trình duyệt nên bao gồm các nền tảng chính (Linux, Windows, Mac, v.v.)
2 Page display (Hiển thị trang)
Các trang hiển thị không chính xác
Thông báo lỗi thời gian chạy
Thời gian tải trang kém
Siêu liên kết chết, phụ thuộc plugin, định cỡ phông chữ, v.v.
3 Quản lý Session Session hết hạn
4 Usability (Khả năng sử dụng)
Thiết kế không trực quan
Điều hướng trang web kém
Thiếu sự trợ giúp-hỗ trợ
5 Content Analysis (Phân tích nội dung)
Nội dung gây hiểu lầm, xúc phạm và kiện tụng
Hình ảnh miễn phí bản quyền và vi phạm bản quyền
Chức năng cá nhân hóa
Sự từ chối của dịch vụ tấn công
Mức độ không có sẵn không thể chấp nhận được
(Sao lưu và phục hồi
Thất bại hoặc không phục hồi được
8 Transactions (Giao dịch) Tính toàn vẹn của giao dịch
9 Shopping order processing and purchasing (Xử lý đơn đặt hàng và mua hàng)
11 Operational business procedures (Các hoạt động thủ tục kinh doanh)
Thủ tục điện tử đối phó tốt như thế nào
Quan sát các nút thắt cổ chai
12 System Integration (Tích hợp hệ thống)
Định dạng giao diện dữ liệu
Tần số giao diện và kích hoạt
13 Performance (Hiệu năng) Tắc nghẽn hiệu suất
Phân tích khả năng mở rộng
(Đăng nhập và Bảo mật)
Thâm nhập và kiểm soát truy cập
Truyền thông tin không an toàn
Kiểm tra hiệu suất - ưu tiên hàng đầu trong Thương mại điện tử
Chỉ cần trì hoãn 250 mili giây trong thời gian tải trang có thể khiến khách hàng chuyển sang đối thủ cạnh tranh Điều này cho thấy tầm quan trọng của tốc độ tải trang trong việc giữ chân khách hàng.
Walmart đã đại tu tốc độ trang web của họ và nhận thấy tỷ lệ chuyển đổi của khách truy cập và doanh thu tăng 1%.
Hiệu suất của trang web của bạn phụ thuộc vào những yếu tố này
Thông lượng : o Yêu cầu mỗi giây o Giao dịch mỗi phút o Số lần thực thi mỗi lần nhấp chuột
Thời gian đáp ứng là yếu tố quan trọng trong trải nghiệm người dùng, bao gồm thời lượng thực hiện một nhiệm vụ, số giây cần thiết cho mỗi lần nhấp chuột, tốc độ tải trang, thời gian tra cứu DNS, và khoảng thời gian giữa các lần nhấp chuột và việc xem trang.
Các công cụ hữu ích để lập bản đồ trang web thương mại điện tử
UsabilityHub là nền tảng kiểm tra người dùng và nghiên cứu, giúp bạn nâng cao trải nghiệm người dùng cho ứng dụng và trang web của mình Nhận phản hồi từ người dùng thực để cải thiện sản phẩm của bạn.
HotJar : Nó hiển thị các khu vực được nhấp chuột và không nhấp chuột nhiều nhất của các trang web bởi khách truy cập.
FiveSecondTest là một công cụ giúp đảm bảo thông điệp của bạn được truyền đạt hiệu quả nhất trong vòng năm giây Công cụ này cho biết những gì người dùng nhớ về thiết kế trang web của bạn.
Feng-GUI là một công cụ mô phỏng tầm nhìn của con người trong năm giây đầu tiên, giúp dự đoán những điểm mà một người thực có khả năng chú ý nhiều nhất.
Optimizely cho phép bạn theo dõi và kiểm tra các chỉ số quan trọng như nhấp chuột và chuyển đổi, giúp tối ưu hóa hoạt động kinh doanh thương mại điện tử.
Những thách thức của thử nghiệm thương mại điện tử
Tuân thủ các nguyên tắc bảo mật để bảo vệ dữ liệu và danh tính của khách hang.
Tuân thủ các tiêu chuẩn về khả năng tiếp cận để hỗ trợ các thị trường đa ngôn ngữ và các khu vực kinh doanh.
Thử nghiệm từ đầu đến cuối và quản lý thử nghiệm cho các chương trình chuyển đổi thương mại điện tử lớn.
Khả năng mở rộng và độ tin cậy của các ứng dụng.