Thi t k & L p trình Web – Bài 12: Web Testing Web Testing Thi t k & L p trình Web Khái ni m Ki m th ph n m m Ki m th Bài 12 ng d ng Web M t s công c h tr ki m th ng d ng Web Web Testing Ths Tr n Th Bích H nh Khoa CNTT – H.KHTN © 2009 Khoa Cơng ngh thơng tin Thi t k & L p trình Web – Bài 12: Web Testing © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Web Testing Ki m th ph n m m Khái ni m Ki m th ph n m m Là qui trình ki m tra ng d ng Ki m th M c tiêu nh m cung c p s b o ng d ng Web M t s công c h tr ki m th – Tính úng ng d ng Web tìm l i (error) m cho: n, xác – S tin c y – Phát hi n l i có th Dijkstra – Ki m th ph n m m có th ch s có m t c a l i nh ng không ch ng minh c s không t n t i c a l i © 2009 Khoa CNTT - HKHTN © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing Phân bi t QC & QA Phân bi t Testing & Debug QC: Quality Control QA: Quality Assurance Nh ng ho t ng, nh ng k thu t nh m b o m ch t l ng s n ph m Nh ng k ho ch, ho t ng mang tính h th ng nh m b o m trình s n xu t s t o nh ng p g s n ph m có ch t l ng Các ho t ng ki m th nh m phát hi n & s a l i © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing HKHTN Phân bi t Alpha Test & Beta Test QA: Quality Assurance Ki m t m b o ch t l Ki m th ng nh ngh a ti n trình Thanh tra Ch n l a cơng c Ki m tra l i © 2009 Khoa CNTT - Thi t k & L p trình Web – Bài 12: Web Testing Phân bi t QC & QA – Ví d QC: Quality Control Các ho t ng qu n lý qui trình QC th c hi n, b o m QC th c hi n úng Hu n luy n © 2009 Khoa CNTT - HKHTN © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing Web Testing Web Testing Khái ni m Ki m th ph n m m Ki m th ng d ng Web M t s công c h tr ki m th ng d ng Web © 2009 Khoa CNTT - HKHTN 10 Thi t k & L p trình Web – Bài 12: Web Testing © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing User Interface Testing User Interface Testing – Ví d Ki m tra n i dung- Content testing – L i t , font ch – Giá tr m c nh – Thơng tin th hi n… 11 © 2009 Khoa CNTT - HKHTN 12 © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing Link Checker Công c h tr Link Check Ki m tra ki n trúc- Website architecture Free – L i c u trúc, link h ng – Link Checker c a W3C – Các trang b thi u • http://validator.w3.org/ – Free Link Checker Các lo i link • http://www.control-f.com/FreeLinkChecker/ – Liên k t n i bô website – Liên k t n website khác Commercial – Liên k t n v trí c thê – Link Checker Pro trang web (anchor) • http://www.link-checker-pro.com/ … http://www.cryer.co.uk/resources/link_checkers.htm 13 © 2009 Khoa CNTT - HKHTN 14 Thi t k & L p trình Web – Bài 12: Web Testing © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing W3C Link checker – Ví d 15 © 2009 Khoa CNTT - K t qu Broken Links & Other Issues HKHTN 16 © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing K t qu trang b redirect 17 © 2009 Khoa CNTT - K t qu anchors & links b duplicate/empty links duplicate/ HKHTN 18 Thi t k & L p trình Web – Bài 12: Web Testing © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Compatibility Testing Công c h tr Compatibility Test Browser compatibility Free Operating system compatibility –Browsershots.org Mobile browsing Commercial Printing options –LitmusApp.com –BrowserCam.com 19 © 2009 Khoa CNTT - HKHTN 20 © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing Browsershots 21 K t qu Màn hình ch p th c thi trình t © 2009 Khoa CNTT - HKHTN 22 Thi t k & L p trình Web – Bài 12: Web Testing Load Test Ki m tra hi u qu th c thi c a ng d ng Ki m tra h th ng th c thi i u ki n có nhi u ng i dùng truy xu t ng th i d i nhi u i u ki n khác – Th i gian ph n h i th c hi n… Giúp phát hi n nh ng v n c a server-side – nh h – Nhi u ng g thi u xót v tài nguyên i truy c p g y – Nhi u giao d ch th c hi n lúc – X lý file dung l ý g ng c a b ng thông ng l n g – Kh n ng c a database – X lý lúc nhi u file… – Yêu c u ph n c ng, ph n m m M c ích ki m tra hi u n ng, m c g, r ng c a h th ng –… Th 23 HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Performance Testing –T c © 2009 Khoa CNTT - ng k t h p v i Load Test ho c Stress Test © 2009 Khoa CNTT - HKHTN Giúp phát hi n v n 24 tin c y tính m v hi u n ng c a h th ng © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing Queuing Workload 25 Steady State Workload © 2009 Khoa CNTT - HKHTN 26 Thi t k & L p trình Web – Bài 12: Web Testing HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Các bi n th c a Load Test Stress Test Stress Test Ki m tra d a vi c t ng liên t c m c n h th ng ng ng ho t ng Stability Test M c tiêu xác ng Isolation Test 27 © 2009 Khoa CNTT - © 2009 Khoa CNTT - HKHTN 28 ch u t i cho nh m c t i h n c a h th ng có th © 2009 Khoa CNTT - HKHTN áp Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing Stability Test Load Testing - HOW Xác nh kh n ng th c thi c a h th ng trì n m t kho ng th i gian dài nh Gi l p nhi u ng i dùng truy c p ng d ng th i d i nhi u i u ki n khác ng Theo dõi & ghi nh n thông s liên quan ánh giá k t qu 30 29 © 2009 Khoa CNTT - HKHTN 4/29/2009 Thi t k & L p trình Web – Bài 12: Web Testing Gi l p nhi u ng Load Testing & SilkPerformer © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing i dùng 2 Theo dõi & Ghi nh n thông s liên quan General measurements Active Users , T A ti U Transactions, E ti Errors Health control measurements CPU utilization, Memory Responsiveness utilization Memory, Internet-related measurements Concurrent connections, Respond Times, Throughput Web-specific measurements HTTP 1-5xx response, HTTP cookies, page time, … … 32 31 © 2009 Khoa CNTT - HKHTN 4/29/2009 Load Testing & SilkPerformer © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing CPU utilization Memory 33 4/29/2009 Load Testing & SilkPerformer © 2009 Khoa CNTT - 34 4/29/2009 HKHTN Load Testing & SilkPerformer Thi t k & L p trình Web – Bài 12: Web Testing © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Responsiveness ánh giá k t qu – Errors – M i quan h gi a s l khác • • • • ng ng i dùng & thông s Transactions Throughputs Response times … 35 4/29/2009 Load Testing & SilkPerformer © 2009 Khoa CNTT - HKHTN 36 4/29/2009 Load Testing & SilkPerformer © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing A Load Test Showing Positive Results A Typical Server-Side Bottleneck Server- 37 4/29/2009 Load Testing & SilkPerformer © 2009 Khoa CNTT - 38 4/29/2009 HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Load Testing & SilkPerformer © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing A Typical Network Bottleneck TrueLog Explorer—TrueLog On Error Files Explorer— 39 4/29/2009 Load Testing & SilkPerformer © 2009 Khoa CNTT - HKHTN 40 4/29/2009 Load Testing & SilkPerformer © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing Công c h tr Performance Test Security Testing Web Server Stress SQL Injection Fail to handle errors – http://www.paessler.com/webstress XSS Proxy Sniffer Hidden Field Vulnerability Weak password based system – http://www.proxy-sniffer.com/ Data Flooding … Wapt – http://www.loadtestingtool.com/ Silk Performer – http://www.borland.com/us/products/silk/silkperformer/ … 41 © 2009 Khoa CNTT - HKHTN 42 Thi t k & L p trình Web – Bài 12: Web Testing © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Functional Testing Ph Ki m th yêu c u ch c n ng mà ph n m m có thê làm c ng pháp Xác pháp Xác nh d li u Input & Output Equivalent Partitioning – Chia giá tr input output thành nhi u mi n gia tr t ng ng – Ph n m m mi n i x nh i v i giá tr m t Ch n M t test-case cho m t mi n t X 43 © 2009 Khoa CNTT - HKHTN 44 ng X © 2009 Khoa CNTT - HKHTN ng Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing Equivalence partitioning Equivalence partitioning Ví d : Rút ti n ngân hàng Ví d : Rút ti n ngân hàng K ch b n K ch b n Ng i thu ngân nh p s tài g g kho n c a khách hàng Ng i thu ngân nh p s tài kho n c a khách hàng hà H th ng hi n th thông tin chi ti t v tài kho n H th ng hi n th thông tin chi ti t v tài kho n Ng rút i thu ngân nh p s ti n c n Ng H th ng tr s ti n c n rút t tài kho n c a khách hàng H th ng xu t hóa Tài kho n kh khơng t n t i Cho phép ng i thu ngân nh p l i s tài kho n i thu ngân nh p s ti n c n rút H th ng tr s ti n c n rút t tài kho n c a khách hàng n giao d ch H th ng xu t hóa n giao d ch 45 © 2009 Khoa CNTT - 46 HKHTN © 2009 Khoa CNTT - Thi t k & L p trình Web – Bài 12: Web Testing HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Equivalence partitioning Equivalence partitioning Ví d : Rút ti n ngân hàng Ví d : Rút ti n ngân hàng K ch b n Yêu c u b sung Ng i thu ngân nh p s tài kho n c a khách hàng hà Input không h p l Báo: “Invalid input” S ti n tài kho n b âm (Do rút s ti n tài kho n) Hi n th s ti n tài kho n v i màu H th ng hi n th thông tin chi ti t v tài kho n Ng i thu ngân nh p s ti n c n rút S ti n c n rút > S ti n tài kho n S ti n c n rút > S ti n tài kho n + gi i h n tín d ng Báo: “Tài kho n không ”, cho nh p l i s ti n c n rút H th ng tr s ti n c n rút t tài kho n c a khách hàng H th ng xu t hóa n giao d ch 47 © 2009 Khoa CNTT - HKHTN 48 © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing Equivalence partitioning Equivalence partitioning Ví d : Rút ti n ngân hàng Ví d : Rút ti n ngân hàng Inputs Outputs S ti n l i tài kho n C p nh t s ti n tài kho n S ti n c n rút Thông báo: “Tài kho n không S ti n tín d ng tí Input: S ti n cịn l i tài kho n ” Thơng bá “I Thô báo: “Invalid input” lid i t” 49 © 2009 Khoa CNTT - 50 HKHTN © 2009 Khoa CNTT - Thi t k & L p trình Web – Bài 12: Web Testing HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Equivalence partitioning Equivalence partitioning Ví d : Rút ti n ngân hàng Ví d : Rút ti n ngân hàng Input: S ti n c n rút Output: S ti n cịn l i sau rút 51 © 2009 Khoa CNTT - HKHTN 52 © 2009 Khoa CNTT - HKHTN Thi t k & L p trình Web – Bài 12: Web Testing Thi t k & L p trình Web – Bài 12: Web Testing Equivalence partitioning Equivalence partitioning Ví d : Rút ti n ngân hàng Partition P titi 10 11 12 13 14 15 16 17 18 19 20 21 Value V l Input balance Credit limit Amount Output balance Lower boundary L b d >= smallest number >= alphabetic string three decimal places > >= smallest number >0 alphabetic string three decimal places >= smallest number >0 > positive balance > balance + credit limit alphabetic string three decimal places >= smallest number >= > credit li it dit limit >= Ví d : Rút ti n ngân hàng Upper b U boundary d