¹Ø±Õ

ΪʲôҪѧSelenium×Ô¶¯»¯²âÊÔ£¿

·¢±íÓÚ£º2023-10-27 09:42

×ÖÌ壺´ó ÖРС | ÉÏһƪ | ÏÂһƪ | ÎÒҪͶ¸å

 ×÷ÕߣºØýÃû    À´Ô´£ºÖªºõ

¡¡¡¡¿ª·¢ÈËÔ±ÔÚ±àд´úÂëʱ×ÜÊǻῼÂǵ½²»Í¬µÄÓ¦Óó¡¾°£¬µ«Ò²¿ÉÄÜ»á³öÏÖʵÏÖЧ¹û²»ÈçÔ¤ÆÚµÄÇé¿ö¡£Í¬ÑùµÄÔ­ÔòÒ²ÊÊÓÃÓÚ²âÊÔ´úÂ룬±àд²âÊÔ´úÂëµÄÖ÷ҪĿµÄÊDzâÊÔÏÖÓвúÆ·µÄ¹¦ÄÜ¡¢·¢ÏÖ´íÎó²¢Ê¹²úÆ·100%ÎÞ´íÎó¡£
¡¡¡¡Óо仰˵µÃºÃ£º"ÕæÏà×ÜÊDZÈС˵¸üÀëÆæ"£¬¶øÔÚÖ´ÐÐ Selenium ²âÊÔ×Ô¶¯»¯Ê±£¬Äã»á¿´µ½ºÜ¶à "ÀëÆæµÄÊÂÇé"¡£Ö´ÐвâÊÔ´úÂëʱÓöµ½µÄÕâЩÊÂÇé»ò³¡¾°¿ÉÄܲ»ÊǺܳ£¼û£¬µ«²âÊÔʵÏÖÓ¦¸Ã×㹻ǿ´óÒÔ´¦Àí´ËÀೡ¾°¡£ÕâЩ³¡¾°±»Ç¡µ±µØ³ÆΪÒì³££¬ÔÚʹÓà Selenium ½øÐÐ×Ô¶¯»¯ä¯ÀÀÆ÷²âÊÔʱ£¬Äú»áÓöµ½Ðí¶à´ËÀàÒì³£¡£
¡¡¡¡Selenium Òì³£¹ã·ºÓÃÓÚ´¦Àí´íÎ󳡾°ºÍ±ÜÃâ Web Ó¦ÓóÌÐò¹ÊÕÏ¡£¾¡¹ÜËùÓÐSelenium WebDriver´úÂëÖж¼¿ÉÄÜ·¢ÉúÐí¶à Selenium Òì³££¬µ«ÓÐЩ Selenium Òì³£ÊǸÿò¼ÜÖ§³ÖµÄ±à³ÌÓïÑÔ£¨Èç Java¡¢C#¡¢Python µÈ£©ÌØÓеġ£
¡¡¡¡±¾Îĺ­¸ÇÁ˳£¼ûµÄSeleniumÒì³£ÒÔ¼°Ìض¨ÓïÑÔµÄÒì³££¬Ï£ÍûÔÚÄãÓöµ½´úÂëÒ쳣ʱÓÐËù°ïÖú£¬¶ÔÖ´ÐÐ×Ô¶¯»¯ä¯ÀÀÆ÷²âÊÔÏà¹Ø³¡¾°Ê±¾­³£Ê¹ÓõÄSeleniumÒì³£Çé¿öÓÐÒ»¸öÈ«ÃæµÄÁ˽⡣
¡¡¡¡Ò»¡¢Selenium Òì³£¼ò½é
¡¡¡¡Òì³££¨Ò²³ÆΪ¹ÊÕÏ£©ÊdzÌÐòÖ´Ðйý³ÌÖз¢ÉúµÄδ³öÏÖµÄʼþ¡£µ±Òì³£·¢Éúʱ£¬Õý³£µÄ³ÌÐòÖ´ÐлáÍ£Ö¹£¬²¢Ö´ÐÐÏàÓ¦µÄÒì³£´¦Àí³ÌÐò¡£Èç¹ûûÓÐÒì³£´¦Àí³ÌÐòÀ´´¦Àí¸ÃÌض¨Òì³££¬³ÌÐò½«·µ»Øµ½Òý·¢Òì³£µÄµ÷Óú¯Êý£¬×îÖÕµ¼Ö³ÌÐòÖÕÖ¹¡£
¡¡¡¡ÓÉÓÚ Selenium ²âÊÔ×Ô¶¯»¯ÊÇÔÚ²»Í¬µÄÄ¿±êƽ̨¡¢É豸ºÍWebä¯ÀÀÆ÷ÉÏÖ´Ðеģ¬²âÊÔ´úÂëµÄÐÐΪ¿ÉÄÜÒòä¯ÀÀÆ÷ÀàÐÍ»òä¯ÀÀÆ÷°æ±¾¶øÒì¡£ÀýÈ磬ijЩÊôÐÔ¿ÉÄÜÊÇä¯ÀÀÆ÷Ìض¨µÄ£¬²¢ÇÒÈç¹ûÖ´ÐÐ×Ô¶¯ä¯ÀÀÆ÷²âÊÔµÄä¯ÀÀÆ÷Öв»´æÔÚÌض¨ÊôÐÔ£¬ÔòÅ׳öÒì³£¡£Í¨ÓÃÊôÐÔÃû³ÆÒ²¿ÉÒÔÊÇÌض¨ÓÚä¯ÀÀÆ÷µÄ£¬Èç¹ûÄ¿±êä¯ÀÀÆ÷Éϲ»´æÔÚÏàͬµÄÊôÐÔ£¬Ôò¿ÉÄܻᵼÖ Selenium Òì³££¬ÀýÈç NoSuchAttributeException¡£
¡¡¡¡ÕýÈ·´¦ÀíÒì³£µ±È»ºÜÖØÒª£¬ÒòΪδ´¦ÀíµÄÒì³£¿ÉÄܻᵼÖ³ÌÐòʧ°Ü£¬×îÖÕÓ°Ïì²úÆ·ÌåÑé¡£Òì³£¶ÔÏó°üº¬ÓйØÒì³£ÀàÐÍ¡¢µ÷ÓöÑÕ»ºÍÆäËûÓÐÓÃÐÅÏ¢µÄÐÅÏ¢£¬ÕâЩÐÅÏ¢½«ÓÐÖúÓÚµ÷ÊÔ²¢Ê¹´úÂë¸ü¼ÓÍòÎÞһʧ¡£
¡¡¡¡¶þ¡¢SeleniumÒì³£µÄÀà±ð
¡¡¡¡Selenium Òì³£·ÖΪÁ½´óÀࣺÒѼì²éÒì³££¨Checked exceptions£©ºÍδ¼ì²éÒì³££¨Unchecked exceptions£©¡£ÕâЩÒì³£¸ù¾Ý²¶»ñÒì³£µÄʱ¼ä£¨¼´±àÒëʱ»òÔËÐÐʱ£©½øÐзÖÀà¡£
¡¡¡¡A. ¼ì²éÒì³£
¡¡¡¡Selenium²âÊÔ×Ô¶¯»¯Öеļì²éÒì³£ÊÇÔÚ²âÊÔ´úÂëʵÏÖ¹ý³ÌÖд¦ÀíµÄ£¬ÀýÈç NoSuchAttributeExceptionµÈ£¬¼ì²éÒì³£µÄ´¦Àí·¢ÉúÔÚ±àÒëʱ±¾Éí¡£
¡¡¡¡³ÌÐò¡£Èç¹ûijЩ·½·¨»áÅ׳ö¼ì²éÒì³££¬×îºÃ¶¨ÒåÒ»¸ö´¦Àí³ÌÐòÀ´´¦Àí¸ÃÒì³£¡£
¡¡¡¡B. δ¾­¼ì²éµÄÒì³£
¡¡¡¡Selenium ²âÊÔ×Ô¶¯»¯ÖеÄδ¼ì²éÒì³£ÔÚÔËÐÐʱ·¢Éú£¬²¢ÇÒ¿ÉÄܱȼì²éÒì³£²úÉú¸üÑÏÖصÄÓ°Ïì¡£ÀýÈç ElementNotVisibleException¡¢MoveTargetOutOfBoundsException µÈ¡£
¡¡¡¡JavaÖеÄÒì³£¿ÉÒÔ±»¼ì²é»òÈ¡Ïû¼ì²é£¬¶øÔÚC++ÖУ¬ËùÓÐÒì³£¶¼ÊÇδ¼ì²éµÄ¡£ÔÚ×Ô¶¯»¯ä¯ÀÀÆ÷²âÊÔÏà¹Ø³¡¾°ÖУ¬Í¨³£»áÓöµ½Î´¾­¼ì²éµÄÒì³££¬ÒòΪ²âÊÔ¿çÔ½²»Í¬µÄWebä¯ÀÀÆ÷ºÍ²Ù×÷ϵͳ×éºÏºÍ°æ±¾¡£
¡¡¡¡Èý¡¢³£¼ûµÄSelenium Òì³£
¡¡¡¡ÔÚ±¾µØ»òÔ¶³Ì Selenium Íø¸ñÉÏÖ´ÐÐ×Ô¶¯»¯ä¯ÀÀÆ÷²âÊÔʱ£¬Äã»áÓöµ½²»Í¬ÀàÐ͵ÄÒì³£¡£Ò»Ð© Selenium Òì³£Ìض¨ÓÚÓÃÓÚ±àдSelenium²âÊÔ×Ô¶¯»¯³¡¾°µÄ±à³ÌÓïÑÔ¡£
¡¡¡¡ÒÔÏÂÊÇËùÓÐSelenium WebDriver´úÂëÖпÉÄÜ·¢ÉúµÄһЩ³£¼ûSeleniumÒì³££º
¡¡¡¡1. ElementClickInterceptedException£¨ÔªËصã»÷À¹½ØÒì³££©
¡¡¡¡ÓÉÓÚ½ÓÊÕClickÃüÁîµÄÔªËØÒÔijÖÖ·½Ê½Òþ²Ø£¬Òò´ËÎÞ·¨ÕýÈ·Ö´ÐÐElement ClickÃüÁî¡£
¡¡¡¡2. ElementNotInteractableException£¨ÔªËز»¿É½»»¥Òì³££©
¡¡¡¡¼´Ê¹Ä¿±ê Web ÔªËØ´æÔÚÓÚ DOM ÉÏ£¬µ«Óë¸ÃÔªËصĽ»»¥½«ÃüÖÐÁíÒ»¸ö Web ÔªËØʱ£¬Ò²»áÒý·¢¡°ElementNotInteractableException¡±Selenium Òì³£¡£
¡¡¡¡3. ElementNotSelectableException£¨ÔªËز»¿ÉÑ¡Òì³££©
¡¡¡¡µ±Ä¿±êÔªËØ´æÔÚÓÚ DOM Éϵ«ÓÉÓÚ¸ÃÔªËز»¿ÉÑ¡Ôñ¶øÎÞ·¨ÓëÖ®½»»¥Ê±£¬»á·¢Éú´Ë Selenium Òì³£¡£ÀýÈ磬Óë script ÔªËؽ»»¥Ê±»áÅ׳ö´ËÒì³£¡£
¡¡¡¡4. ElementNotVisibleException£¨ÔªËز»¿É¼ûÒì³££©
¡¡¡¡×î³£¼ûµÄ Selenium Òì³£ÀàÐÍ£¬¼´Ê¹ Web ÔªËØ´æÔÚµ«²»¿É¼ûʱҲ»áÅ׳ö¸ÃÒì³£¡£ÓÉÓÚ¸ÃÔªËز»¿É¼û£¬Òò´Ë²»¿ÉÄÜÓë¸ÃÔªËؽøÐÐÈκν»»¥¡£
¡¡¡¡ÕâÖÖÇé¿öÔÚ Selenium ²âÊÔ×Ô¶¯»¯Öо­³£Óöµ½£¬ÆäÖг¢ÊÔ¶Ô Web ÔªËØ£¨ÀýÈç°´Å¥¡¢±êÇ©µÈ£©½øÐÐÏà¹Ø²Ù×÷£¨µ¥»÷¡¢¶ÁÈ¡µÈ£©£¬µ«¸ÃÔªËØÔÚÊÓͼÖÐÒþ²Ø¡£ÁíÒ»¸öʾÀýÊÇ HTML Öж¨ÒåµÄÒþ²ØÀàÐ͵ÄÔªËØ¡£
¡¡¡¡5. ErrorInResponseException
¡¡¡¡µ±·þÎñÆ÷¶Ë·¢ÉúijЩÎÊÌâ»ò´íÎóʱ£¬»áÅ׳ö´Ë Selenium Òì³£¡£µ±Ê¹ÓôíÎóµÄÓû§ÃûºÍ·ÃÎÊÃÜÔ¿×éºÏÀ´·ÃÎÊ»ùÓÚÔƵÄÔ¶³Ì Selenium Grid¡¢ÓëÔ¶³Ì Web Çý¶¯³ÌÐò·þÎñÆ÷ͨÐÅ»òÓë Firefox À©Õ¹£¨»ò Chrome ²å¼þ£©Í¨ÐÅʱ£¬¿ÉÄܻᷢÉúÕâÖÖÇé¿ö¡£
¡¡¡¡·þÎñÆ÷¶Ë´íÎóµÄһЩ³£¼ûÏìÓ¦´úÂëÈçÏ£º
¡¡¡¡401 ¡ª Unauthorized£¨Î´ÊÚȨ£©
¡¡¡¡400 ¡ª BadRequest£¨´íÎóÇëÇó£©
¡¡¡¡500 ¡ª InternalServerError£¨ÄÚ²¿·þÎñÆ÷´íÎó£©
¡¡¡¡409 ¡ª Conflict£¨³åÍ»£©
¡¡¡¡403 ¡ª Forbidden£¨½ûÖ¹£©
¡¡¡¡405 ¡ª MethodNotAllowed£¨·½·¨²»ÔÊÐí£©
¡¡¡¡6. ImeActivationFailedException£¨ÊäÈë·¨ÒýÇ漤»îʧ°ÜÒì³££©
¡¡¡¡Èç¹ûIME£¨ÊäÈë·¨ÒýÇ棩ÓÉÓÚijÖÖÔ­Òò¼¤»îʧ°Ü£¬ÔòÅ׳ö´ËÒì³£¡£
¡¡¡¡´¦Àí´ËÎÊÌâµÄÀíÏë·½·¨ÊǼì²é¼ÆËã»úÉÏÊÇ·ñÓÐ IME Ö§³Ö¡£
¡¡¡¡7. ImeNotAvailableException£¨ÊäÈë·¨²»¿ÉÓÃÒì³££©
¡¡¡¡Èç¹û IME£¨ÊäÈë·¨ÒýÇ棩²»¿ÉÓã¬ÔòÅ׳ö´Ë Selenium Òì³£¡£Èç¹û²âÊÔ»úÆ÷Éϲ»Ìṩ IME Ö§³Ö£¬Ôòÿ¸ö IME Ïà¹Ø·½·¨¶¼»áÒý·¢ ImeNotAvailableException¡£
¡¡¡¡8. InsecureCertificateException£¨²»°²È«Ö¤ÊéÒì³££©
¡¡¡¡Ê¹ÓùýÆÚ»òÎÞЧµÄ TLS Ö¤Êéµ¼ÖÂÓû§´úÀí·¢³öÖ¤Ê龯¸æ¡£
¡¡¡¡9. NoSuchFrameException
¡¡¡¡µ±ÒªÇл»µ½µÄ¿ò¼Ü²»´æÔÚʱ£¬¾Í»áÅ׳ö NoSuchFrameException Selenium Òì³£¡£
¡¡¡¡Îª±ÜÃâ´ËÀà Selenium Òì³££¬½¨ÒéÔÚ×Ô¶¯ä¯ÀÀÆ÷²âÊÔ´úÂëÖÐÌí¼ÓÓйØÇл»µ½¿ò¼ÜģʽµÄÕýÈ·ÐÔ¼ì²é¡£¼ì²éʹÓõĿò¼ÜË÷ÒýÊÇ·ñÕýÈ·¡£¿ÉÌí¼Ó¼¸ºÁÃ루ms£©µÄ¶îÍâµÈ´ý£¬ÒÔÈ·±£¿ò¼Ü¼ÓÔØÍê³É¡£
¡¡¡¡10. NoSuchWindowException
¡¡¡¡µ±Çл»µ½µÄ´°¿ÚÄ¿±ê²»´æÔÚʱÅ׳ö´ËÒì³£¡£ÕâЩÇé¿ö¿ÉÒÔͨ¹ýʹÓà window_handles À´´¦Àí£¬ÒÔ»ñµÃµ±Ç°µÄ»î¶¯´°¿Ú¼¯¡£´°¿Ú¾ä±ú¿ÉÓÃÓÚÔÚÆäÉÏÖ´ÐÐÊʵ±µÄ²Ù×÷¡£
¡¡¡¡11. RemoteDriverServerException£¨Ô¶³ÌÇý¶¯·þÎñÆ÷Òì³££©
¡¡¡¡µ±ä¯ÀÀÆ÷¹¦ÄÜÖеĴíÎó×éºÏ/×ֶε¼Ö·þÎñÆ÷²»·¢ËÍÏìӦʱ£¬Å׳ö´ËÒì³£¡£ÎªÁ˱ÜÃâ´ËÀà Selenium Òì³££¬´Ó£¨Æ½Ì¨ + ä¯ÀÀÆ÷£©¡¢£¨Æ½Ì¨ + ä¯ÀÀÆ÷ + ä¯ÀÀÆ÷°æ±¾£©µÈÓÐЧ×éºÏµÄ½Ç¶È³¹µ×¼ì²é Selenium ä¯ÀÀÆ÷¹¦Äܷdz£ÖØÒª¡£
¡¡¡¡12. ScreenshotException£¨½ØÆÁÒì³££©
¡¡¡¡¹ËÃû˼Ò壬µ±ÎÞ·¨²¶»ñÆÁĻʱ»áÅ׳ö´Ë Selenium Òì³£¡£ÕâÖÖÇé¿öºÜ¿ÉÄܳöÏÖÔÚÓû§ÊäÈëÃô¸ÐÐÅÏ¢£¨ÀýÈçÓû§Ãû¡¢ÃÜÂë¡¢ÒøÐÐÐÅÏ¢µÈ£©µÄÍøÒ³/Web Ó¦ÓóÌÐòÖС£ÔÚÕâÖÖÇé¿öÏ£¬ÓÉÓÚÆÁÄ»½ØͼÏÞÖƶøÎÞ·¨²¶»ñÆÁÄ»¡£ÔÚÕâÀÆÁÄ»½ØͼÏÞÖÆ»á×èÖ¹ÆÁÄ»±»²¶»ñ»ò¼Ç¼¡£
¡¡¡¡13. SessionNotCreatedException
¡¡¡¡µ±Ð»Ự´´½¨²»³É¹¦Ê±»á³öÏÖ´ËÒì³£¡£
¡¡¡¡14. InvalidArgumentException£¨ÎÞЧ²ÎÊýÒì³££©
¡¡¡¡µ±´«µÝµÄ²ÎÊýÎÞЧ»ò¸ñʽ´íÎóʱ£¬½«Òý·¢ InvalidArgumentException Òì³£¡£
¡¡¡¡¸üºÃµÄ×ö·¨ÊÇÔÚ Selenium ²âÊÔ×Ô¶¯»¯´úÂëÖÐʹÓÃÊʵ±µÄµÈ´ý£¨ÒÔºÁÃëΪµ¥Î»£©À´ÑéÖ¤±»²âÍøÒ³ÊÇ·ñÒѼÓÔØ¡£
¡¡¡¡15. InvalidCookieDomainException
¡¡¡¡µ±³¢ÊÔΪÓ뵱ǰ URL ²»Í¬µÄ URL/ÓòÌí¼Ó cookie ʱ£¬»áÒý·¢´Ë Selenium Òì³£¡£
¡¡¡¡Òª´¦Àí´ËÒì³££¬Ó¦¸Ãµ¼º½µ½±ØÐëÌí¼Ó cookie µÄÕýÈ· URL¡£
¡¡¡¡16. InvalidCooperativesException£¨ÎÞЧ×ø±êÒì³££©
¡¡¡¡µ±Ïò½»»¥²Ù×÷Ìṩ²»ÕýÈ·µÄ×ø±êʱ£¬»áÒý·¢´ËÌض¨Òì³£¡£ÕâÒ²Òâζ×ÅÒÀÀµÓÚÊó±êλÖõIJÙ×÷£¨ÀýÈçµ¥»÷£©Ö®Ç°Ã»ÓÐÒƶ¯²Ù×÷£¬»òÕßΪÒƶ¯²Ù×÷ÌṩÁËÎÞЧµÄ×ø±ê¡£
¡¡¡¡17. InvalidElementStateException£¨ÎÞЧԪËØ״̬Òì³££©
¡¡¡¡µ±ÓÉÓÚÔªËØδ´¦ÓÚÓÐЧ״̬»òÔªËØδÆôÓÃÖ´ÐиòÙ×÷¶øÎÞ·¨Íê³ÉÃüÁîʱ£¬½«Òý·¢´Ë Selenium Òì³£¡£Èç¹ûÔÚ²»¿É±à¼­ÇÒ²»¿ÉÖØÖÃµÄ Web ÔªËØÉϳ¢ÊÔÖ´ÐÐÖîÈçÇå³ýÔªËØÖ®ÀàµÄ²Ù×÷£¬Ôò¿ÉÄܻᵼÖÂÕâÖÖÇé¿ö¡£
¡¡¡¡ÒªÔÚ Selenium ²âÊÔ×Ô¶¯»¯Öд¦Àí´ËÀàÒì³££¬½¨ÒéÏȵȴý¸ÃÔªËØÆôÓã¬È»ºóÔÙ¶ÔÆäÖ´ÐÐËùÐèµÄ²Ù×÷¡£
¡¡¡¡18. InvalidSelectorException£¨ÎÞЧѡÔñÆ÷Òì³££©
¡¡¡¡Èç¹ûÔÚ²»Í¬°æ±¾Ö®¼ä¸ü¸ÄÁËÑ¡ÔñÆ÷Ãû³Æ£¬¾Í¿ÉÄÜÒâÍâʹÓÃÎÞЧ»ò²»ÕýÈ·µÄÑ¡ÔñÆ÷À´¶¨Î» Web ÔªËØ¡£Èç¹ûÓÃÓÚ²éÕÒ Web ÔªËصÄÑ¡ÔñÆ÷ûÓзµ»Ø WebElement£¬¾Í»á²úÉú InvalidSelectorException Òì³£¡£
¡¡¡¡ÕâÖÖÇé¿öͨ³£·¢ÉúÔÚÑ¡ÔñÆ÷ÊÇ XPath ±í´ïʽÇÒ XPath ÎÞЧµÄÇé¿öÏ¡£Õ⽫µ¼ÖÂÎÞ·¨ÕÒµ½Ä¿±êÍøÒ³ÔªËØ¡£
¡¡¡¡19. InvalidSessionIdException£¨ÎÞЧ»á»°±êʶÒì³££©
¡¡¡¡Èç¹û Selenium ²âÊÔ×Ô¶¯»¯ÊµÏÖÖÐʹÓõĻỰ ID ÎÞЧ£¬¼´²»ÔÚµ±Ç°»î¶¯»á»°ÁбíÖУ¬Ôò»áÅ׳ö´ËÒì³£¡£Èç¹û»á»°²»»î¶¯»ò´Óδ´æÔÚ¹ý£¬¾Í»á·¢ÉúÕâÖÖÇé¿ö¡£
¡¡¡¡20. InvalidSwitchToTargetException£¨ÎÞЧĿ±êÇл»Òì³££©
¡¡¡¡Èç¹ûÇл»µ½µÄ¿ò¼Ü»ò´°¿ÚÄ¿±êÎÞЧ£¬Ôò»á³öÏÖ´Ë Selenium Òì³£¡£ÔÚÇл»µ½¸Ã¿ò¼Ü֮ǰ£¬Ê¹Óá°¼ì²é¹¤¾ß¡±Ñé֤Ŀ±ê¿ò¼ÜµÄ XPath ·Ç³£ÖØÒª¡£
¡¡¡¡21. JavascriptException
¡¡¡¡µ±Ö´ÐÐ JavaScript ´úÂë³öÏÖÎÊÌâʱÅ׳ö´ËÒì³£¡£
¡¡¡¡22. NoAlertPresentException£¨ÎÞ¾¯±¨ÏÔʾÒì³££©
¡¡¡¡µ±Çл»µ½ÆÁÄ»ÉÏÉÐδ³öÏֵľ¯±¨Ê±»á·¢Éú¸ÃÒì³£¡£´¦Àí¾¯±¨µÄÀíÏë·½·¨ÊǼì²é¾¯±¨ÊÇ·ñ´æÔÚ£¬È»ºóµ÷Óà Alert() ÀàÉÏËùÐèµÄ²Ù×÷¡£
¡¡¡¡23. MoveTargetOutOfBoundsException£¨Òƶ¯Ä¿±ê³¬³ö±ß½çÒì³££©
¡¡¡¡Èç¹ûÌṩ¸ø ActionChains() Òƶ¯·½·¨µÄÄ¿±ê³¬³ö·¶Î§£¬¼´ÎÞЧ»òÔÚÎĵµ/ÍøÒ³Ö®Í⣬¾Í»á³öÏÖ Selenium Òì³£¡£
¡¡¡¡ÔÚµ÷Óà ActionChains() ÀàµÄ move ·½·¨Ö®Ç°£¬Ó¦Ê¼ÖÕ¼ì²éÎÒÃÇÊÔͼÒƶ¯µÄλÖã¬Ö»Óе±¸ÃλÖóöÏÖÔÚÆÁÄ»ÉÏʱ²ÅÖ´ÐÐÏàͬµÄ²Ù×÷¡£
¡¡¡¡24. NoSuchAttributeException£¨ÎÞÊôÐÔÒì³££©
¡¡¡¡ÕâÊÇÔÚ½øÐÐ×Ô¶¯»¯ä¯ÀÀÆ÷²âÊÔʱһ¶¨»áÓöµ½µÄÉÙÊý Selenium Òì³£Ö®Ò»¡£Èç¹ûÎÞ·¨ÕÒµ½ÔªËصÄÊôÐÔ£¬¾Í»áÅ׳ö NoSuchAttributeException Òì³£¡£
¡¡¡¡Òª´¦Àí´ËÒì³££¬Ó¦Õë¶ÔÖ´ÐвâÊÔµÄä¯ÀÀÆ÷¼ì²éÊôÐÔÊÇ·ñ´æÔÚ¡£²»Í¬ä¯ÀÀÆ÷ÖÐͬһÊôÐԵIJ»Í¬ÊôÐÔÃû¿ÉÄܸ÷²»Ïàͬ£¬Èç¹û´¦ÀíЧÂʵÍÏ£¬¾Í»áµ¼Ö´ËÒì³£¡£
¡¡¡¡±ÜÃâ·¢Éú´ËÒì³£µÄÁíÒ»ÖÖ·½·¨ÊǸù¾Ý DOM ÉÏÔªËصÄÐÂϸ½Ú¸ü¸ÄÊôÐÔ¡£
¡¡¡¡25. NoSuchCookieException£¨ÎÞCookieÒì³££©
¡¡¡¡µ±µ±Ç°ä¯ÀÀÉÏÏÂÎĻÎĵµµÄ¹ØÁª Cookie Öв»´æÔÚÓë¸ø¶¨Â·¾¶ÃûÆ¥ÅäµÄ Cookie ʱ£¬¾Í»á³öÏÖ Selenium Òì³£¡£
¡¡¡¡26. NoSuchElementException£¨ÎÞÔªËØÒì³££©
¡¡¡¡µ±ÓÃÓÚ·ÃÎÊÔªËصĶ¨Î»Æ÷ÎÞЧ£¬»òÊÔͼ¶ÔÒ»¸ö²»ÔÚ DOM ÖеÄÔªËØÖ´ÐвÙ×÷ʱ£¬Selenium »áÅ׳ö NoSuchElementException Òì³£¡£ÔÚÕâÁ½ÖÖÇé¿öÏ£¬¶¼ÕÒ²»µ½ÔªËØ¡£
¡¡¡¡Òª´¦Àí Selenium Òì³££¬Ó¦¼ì²éÑ¡ÔñÆ÷ÊÇ·ñÕýÈ·£¬Èç¹ûÕýÈ·£¬ÔòÐèÒª¶îÍâµÈ´ýÒÔÈ·±£ WebElement µÄ³öÏÖ¡£
¡¡¡¡27. StaleElementReferenceException£¨³Â¾ÉÔªËØÒýÓÃÒì³££©
¡¡¡¡µ±ÒýÓõÄÔªËØÒѲ»ÔÚÒ³ÃæµÄ DOM ÖÐʱ£¬»á³öÏÖ Selenium Òì³£¡£¼òµ¥µØ˵£¬¸ÃÔªËØÒѾ­Ë¥¼õ»ò¹ýʱ¡£
¡¡¡¡µ¼ÖÂÕâÖÖÌØÊâ Selenium Òì³£µÄһЩ¿ÉÄÜÔ­ÒòÓУº
¡¡¡¡¡¤ÔªËØ¿ÉÄÜÔÚÒ»¸ö±»Ë¢Ð嵀 iFrame ÖС£
¡¡¡¡¡¤ Ò³Ãæ¿ÉÄÜÒѾ­Ë¢Ð£¬Òª·ÃÎʵÄÔªËز»ÔÙÊǵ±Ç°Ò³ÃæµÄÒ»²¿·Ö¡£
¡¡¡¡¡¤ ¸ÃÔªËØ¿ÉÄÜÒѱ»ÒƳý²¢ÖØÐÂÌí¼Óµ½ÆÁÄ»ÉÏ£¬ÒòΪ¸ÃÔªËØÒѱ»¶¨Î»¡£
¡¡¡¡´¦Àí´ËÒì³£µÄÒ»¸ö¿ÉÐнâ¾ö·½°¸ÊÇʹÓö¯Ì¬ XPath ÔÚÑ­»·ÖвéÕÒËùÐèÔªËØ£¬²¢ÔÚÕÒµ½ÔªËغóÖжÏÑ­»·¡£
¡¡¡¡28. TimeoutException£¨³¬Ê±Òì³££©
¡¡¡¡Èôµ±Ç°ÕýÔÚÖ´ÐеÄÃüÁîûÓÐÔÚÔ¤ÆÚʱ¼äÄÚÍê³Éʱ£¬¾Í»á³öÏÖ³¬Ê±Òì³£¡£
¡¡¡¡´¦ÀíÕâÖÖÒì³£µÄÒ»¸ö¿ÉÐа취ÊÇÔö¼ÓÃüÁîÍê³ÉÖ´Ðеĵȴýʱ¼ä¡£²»¹ý£¬Ó¦¸ÃΪµÈ´ýʱ¼äÑ¡ÔñÒ»¸öÀíÏëÖµ£¬·ñÔò¿ÉÄÜ»áÑÓ³Ù½øÒ»²½Ö´ÐС£
¡¡¡¡29. UnableToSetCookieException£¨ÎÞ·¨ÉèÖÃCookieÒì³££©
¡¡¡¡µ±Selenium WebDriver ÎÞ·¨ÉèÖà cookie ʱ»á³öÏÖÕâÖÖ Selenium Òì³£¡£
¡¡¡¡¿ÉÒÔÌí¼Ó¶îÍâµÄµÈ´ýʱ¼ä£¬ÒÔ±ãΪÓò¼ÓÔØ cookie¡£
¡¡¡¡30. UnexpectedAlertPresentException£¨ ÒâÍ⾯±¨³öÏÖÒì³££©
¡¡¡¡µ±³öÏÖÒâÍ⾯±¨Ê±·¢Éú¡£·¢Éú´ËÒì³£µÄÒ»¸ö³£¼ûÔ­ÒòÊÇÒ³ÃæÉϳöÏÖģʽ´°¿Ú/µ¯³ö´°¿Úµ¼Ö Selenium WebDriver ÃüÁî±»×èÖ¹¡£
¡¡¡¡31. UnexpectedTagNameException£¨±êÇ©Ãû³ÆÒì³££©
¡¡¡¡µ±Ö§³ÖÀàÎÞ·¨ÕÒµ½Ô¤ÆÚµÄ Web ÔªËØʱ£¬»á·¢Éú´Ë Selenium Òì³£¡£
¡¡¡¡32. UnknownMethodException£¨ δ֪·½·¨Òì³££©
¡¡¡¡ÕâÊdz£¼ûµÄ Selenium Òì³£Ö®Ò»£¬µ±ÇëÇóµÄÃüÁîÄܹ»Æ¥ÅäÒÑÖª URL µ«ÎÞ·¨Æ¥Åä¸Ã URL µÄ·½·¨Ê±¾Í»á·¢Éú¡£Òª´¦Àí´ËÒì³££¬Ó¦¼ì²éÓë URL Ò»Æ𴫵ݵķ½·¨ÊÇ·ñÓÐЧ¡£
¡¡¡¡33. WebDriverException
¡¡¡¡ÕâÊÇÓÉÓÚ Selenium WebDriver ºÍÄ¿±ê Web ä¯ÀÀÆ÷µÄ°ó¶¨²»¼æÈݶø·¢ÉúµÄ»ù±¾ WebDriver Òì³£¡£Òª´¦Àí´ËÒì³££¬Ó¦¸ÃÏÂÔØÓëÏàÓ¦ Web ä¯ÀÀÆ÷¼æÈÝµÄ Selenium WebDriver ¿â¡£
¡¡¡¡ËÄ¡¢JavaÖеÄSeleniumÒì³£
¡¡¡¡ÓÐЩSeleniumÒì³£ÊÇÌض¨±à³ÌÓïÑԵIJâÊÔ×Ô¶¯»¯ËùÌØÓеġ£³ýÁËÉÏÃæ½éÉÜµÄ Selenium Öеij£¼ûÒì³£Í⣬ÏÂÃæ½éÉÜ Java ÓïÑÔÌØÓÐµÄ Selenium Òì³££º
¡¡¡¡34. ConnectionClosedException£¨Á¬½Ó¹Ø±ÕÒì³££©
¡¡¡¡µ±Óë Selenium WebDriver µÄÁ¬½Ó¶ªÊ§Ê±Å׳ö´ËÒì³£¡£
¡¡¡¡35. ErrorHandler.UnknownServerException
¡¡¡¡µ±·þÎñÆ÷·µ»Ø´íÎó¶øûÓжÑÕ»¸ú×Ùʱ£¬ËüÓÃ×÷ռλ·û¡£
¡¡¡¡36. JsonException
¡¡¡¡µ±ÄãÄÜ»ñÈ¡»á»°¹¦ÄÜ£¬µ«È´Ã»Óд´½¨»á»°Ê±»áÅ׳ö´ËÒì³£¡£
¡¡¡¡37. NoSuchSessionException
¡¡¡¡ÔÚ WebDriver.quit() Ö´Ðкóµ÷ÓÃÃüÁîʱ»áÅ׳ö´Ë Selenium Òì³£¡£ÓÉÓÚ WebDriver ʵÀýÒѲ»´æÔÚ£¬¶Ô¸ÃÌض¨ WebDriver ʵÀýµÄÈκβÙ×÷¶¼»á·µ»Ø´ËÒì³£¡£
¡¡¡¡38. NotFoundException
¡¡¡¡µ±DOMÉϲ»´æÔÚÔªËØʱ»á·¢Éú´ËÒì³£¡£
¡¡¡¡39. ScriptTimeoutException
¡¡¡¡µ±Òì²½½Å±¾µÄÖ´ÐÐûÓÐÔÚ¸ø¶¨µÄʱ¼äÏÞÖÆÄÚÍê³ÉʱÅ׳ö¡£
¡¡¡¡40. UnhandledAlertException£¨Î´´¦Àí¾¯±¨Òì³££©
¡¡¡¡Selenium Òì³£ÊÇ WebDriver Òì³£µÄ×ÓÀà¡£µ± WebDriver ÎÞ·¨Ö´Ðо¯±¨²Ù×÷£¨¼´Ê¹´æÔÚ¾¯±¨£©Ê±£¬¾Í»áÅ׳ö¸ÃÒì³£¡£
¡¡¡¡41. UnreachableBrowserException£¨ÎÞ·¨·ÃÎÊä¯ÀÀÆ÷Òì³££©
¡¡¡¡UnreachableBrowserException ±íʾÓë×Ô¶¯»¯²âÊÔ´úÂë¿ØÖÆµÄ Web ä¯ÀÀÆ÷ͨÐÅʱ³öÏÖÎÊÌâ¡£ÕâÒ²¿ÉÄÜÊÇÓÉÓÚÓë Selenium ·þÎñÆ÷ͨÐŵÄÎÊÌâÔì³ÉµÄ¡£
¡¡¡¡Èç¹ûÔ¶³Ì Selenium WebDriver »ò Selenium Íø¸ñµÄ·þÎñÆ÷µØÖ·ÎÞЧ£¬Ôò¿ÉÄܻᷢÉúÕâÖÖÇé¿ö¡£ä¯ÀÀÆ÷ʵÀýÒ²ÓпÉÄÜÔÚ Selenium ²âÊÔ×Ô¶¯»¯ÖÜÆÚÖÐÖÕÖ¹¡£
¡¡¡¡42. UnsupportedCommandException£¨²»Ö§³ÖµÄÒì³£ÃüÁ
¡¡¡¡µ±Ô¶³Ì Selenium WebDriver ·¢Ë͵ÄÃüÁîÎÞЧʱÅ׳ö´ËÒì³£¡£
¡¡¡¡43. NoSuchContextException
¡¡¡¡¸ÃÒì³£·¢ÉúÔÚÒƶ¯²âÊÔÖУ¬ÓÉ ContextAware.context(String) Å׳ö¡£
¡¡¡¡44. NotConnectedException
¡¡¡¡µ±Ôڹ涨µÄʱ¼ä¶ÎÄÚ³¢ÊÔÁ¬½Óºó³¢ÊÔÁ¬½ÓÌض¨Ö÷»ú»òÔ¶³Ì Selenium Íø¸ñʧ°Üʱ£¬½«Òý·¢´Ë Selenium Òì³£¡£
¡¡¡¡45. SeleniumException
¡¡¡¡¹ËÃû˼Ò壬µ± Selenium ÃüÁîʧ°Üʱ»áÅ׳ö Selenium Òì³£¡£
¡¡¡¡46. UnableToCreateProfileException£¨ÎÞ·¨´´½¨ÅäÖÃÎļþÒì³££©
¡¡¡¡µ±ÒªÖ´ÐÐ Selenium ²âÊÔ×Ô¶¯»¯µÄä¯ÀÀÆ÷ʹÓÃijЩ×Ô¶¨ÒåÅäÖÃÎļþ´ò¿ªµ« WebDriver »òä¯ÀÀÆ÷ÔÚÖ§³Ö¸ÃÅäÖÃÎļþʱ³öÏÖÎÊÌâʱ£¬»á·¢Éú UnableToCreateProfileException¡£
¡¡¡¡Òª´¦Àí´ËÒì³££¬½¨Òé¼ì²éÒÑ°²×°µÄ Selenium WebDriver °æ±¾ÒÔ¼° Web ä¯ÀÀÆ÷Ö§³ÖµÄÅäÖÃÎļþ¡£
¡¡¡¡47. UrlChecker.TimeoutException
¡¡¡¡µ±ä¯ÀÀÆ÷ÔÚ³¢ÊÔÒ»¶Îʱ¼äºóÎÞ·¨´ò¿ª±»²â URL ʱ£¬»áÅ׳ö´ËÒì³£¡£
¡¡¡¡Òª´¦Àí´Ë Selenium Òì³££¬ÔÚ³¢ÊÔÔÚä¯ÀÀÆ÷Öдò¿ª£¨ÕýÔÚ²âÊÔÖУ©Ö®Ç°£¬±ØÐë¼ì²é URL µÄÕýÈ·ÐÔ¡£
¡¡¡¡Îå¡¢C#ÖеÄSeleniumÒì³£
¡¡¡¡C# ÌØÓеÄSeleniumÒì³£ÓУº
¡¡¡¡48. DriverServiceNotFoundException£¨Çý¶¯³ÌÐò·þÎñδÕÒµ½Òì³££©
¡¡¡¡µ±Ö´ÐÐ×Ô¶¯ä¯ÀÀÆ÷²âÊÔµÄÔªËز»¿É¼ûʱ£¬½«Òý·¢ DriverServiceNotFoundException ÀàϵÄÒì³£¡£
¡¡¡¡Òª´¦Àí´ËÒì³££¬¿ÉÒԵȴýÒ³ÃæÍêÈ«¼ÓÔØ£¬ÔÚÈ·ÈÏ Web ÔªËؿɼûºóÔÙÖ´ÐÐ Selenium WebDriver ÃüÁî¡£
¡¡¡¡49. WebDriverTimeoutException
¡¡¡¡WebDriverTimeoutException Àà±íʾִÐвÙ×÷ʱ·¢Éú´íÎóʱÒý·¢µÄÒì³£¡£
¡¡¡¡50. XPathLookupException
¡¡¡¡µ±XPath²éÕÒ¹ý³ÌÖз¢Éú´íÎóʱÅ׳öµÄSeleniumÒì³£¡£
¡¡¡¡Áù¡¢´¦ÀíSeleniumÒì³£
¡¡¡¡´¦Àí Selenium Òì³£µÄ·½Ê½Òò±à³ÌÓïÑÔ¶øÒì¡£²»¹ý£¬×îÖØÒªµÄÒ»µãÊÇ£¬SeleniumÒì³£Ó¦¸Ã±»´¦Àí£¬ÒòΪÒì³£ÌṩÁ˼«ÆäÖØÒªµÄÐÅÏ¢¡£
¡¡¡¡ÒÔÏÂÊdz£Óñà³ÌÓïÑÔ´¦Àí Selenium Òì³£µÄ¼òÒªÒªµã£º
¡¡¡¡Python£ºÈç¹ûÄãʹÓÃPython½øÐÐä¯ÀÀÆ÷×Ô¶¯²âÊÔ£¬Òì³£Àà¿ÉÔÚselenium.common.exceptionÖÐÕÒµ½£¬ÔÚʹÓøðüµÄÈκÎÃüÁî֮ǰ¶¼Ó¦µ¼Èë¡£
¡¡¡¡Ò쳣ʹÓà try...except ¿éÀ´´¦Àí£¬ÆäÖÐ try ¿é¿ÉÈÃÄã²âÊÔ´úÂëÊÇ·ñ³ö´í£¬except ¿é¿É°ïÖúÄã´¦Àí´íÎ󣬶ø¿ÉÑ¡µÄ finally ¿éÎÞÂÛ try ¿éÊÇ·ñÒý·¢´íÎ󶼻ᱻִÐС£
¡¡¡¡Java £ºSelenium Òì³£ÔÚ Java ÖÐʹÓà try-catch ·½·¨´¦Àí¡£try ´úÂë¿éÊÇ´úÂë¿éµÄ¿ªÊ¼£¬catch ´úÂë¿é°üº¬½â¾öÒì³£µÄÖ´ÐС£catch ¿éλÓÚ try ¿éµÄĩβ¡£
¡¡¡¡Óë Python Ò»Ñù£¬ÄúÒ²¿ÉÒÔʹÓà finally ¹Ø¼ü×Ö´´½¨Ò»¸ö´úÂë¿é£¬ÎÞÂÛÒì³£ÊÇ·ñ·¢Éú£¬¸Ã´úÂë¿é¶¼»á±»Ö´ÐС£
¡¡¡¡C# £ºÓë Java ÀàËÆ£¬Selenium ҲʹÓà try-catch Óï¾ä´¦ÀíÒì³£¡£try ¿é°üº¬¿ÉÄܵ¼ÖÂÒì³£µÄ´úÂë¡£try ¿éϵĴúÂë»á±»Ö´ÐУ¬Ö±µ½´úÂë³É¹¦Ö´ÐлòÒì³£Å׳ö¡£catch ¿é°üº¬²»Í¬Òì³£µÄ´¦Àí³ÌÐò¡£
¡¡¡¡×ܶøÑÔÖ®
¡¡¡¡Òì³£ÔÚ¿ª·¢Öкܳ£¼û£¬µ«±ØÐëСÐÄ´¦Àí¡£Á˽ⲻͬµÄ Selenium Òì³£·Ç³£ÖØÒª£¬ÒòΪÕâÓÐÖúÓÚ¿ª·¢¸üÇ¿´óµÄ×Ô¶¯»¯ä¯ÀÀÆ÷²âÊԽű¾¡£
¡¡¡¡Selenium ²âÊÔ×Ô¶¯»¯ÖеÄÒì³£´¦ÀíÓÐÖúÓÚʶ±ðÌض¨ÓÚä¯ÀÀÆ÷/ƽ̨/É豸µÄ¿çä¯ÀÀÆ÷¼æÈÝÐÔÎÊÌâ¡£
¡¡¡¡±¾ÎÄÄÚÈݲ»ÓÃÓÚÉÌҵĿµÄ£¬ÈçÉ漰֪ʶ²úȨÎÊÌ⣬ÇëȨÀûÈËÁªÏµ51TestingС±à(021-64471599-8017)£¬ÎÒÃǽ«Á¢¼´´¦Àí
¡¶2023Èí¼þ²âÊÔÐÐÒµÏÖ×´µ÷²é±¨¸æ¡·¶À¼Ò·¢²¼~

¹Ø×¢51Testing

ÁªÏµÎÒÃÇ

¿ì½ÝÃæ°å Õ¾µãµØͼ ÁªÏµÎÒÃÇ ¹ã¸æ·þÎñ ¹ØÓÚÎÒÃÇ Õ¾³¤Í³¼Æ ·¢Õ¹Àú³Ì

·¨ÂɹËÎÊ£ºÉϺ£À¼µÏÂÉʦÊÂÎñËù ÏîÆåÂÉʦ
°æȨËùÓÐ ÉϺ£²©Îª·åÈí¼þ¼¼Êõ¹É·ÝÓÐÏÞ¹«Ë¾ Copyright©51testing.com 2003-2024
ͶËß¼°Òâ¼û·´À¡£ºwebmaster@51testing.com; ÒµÎñÁªÏµ£ºservice@51testing.com 021-64471599-8017

»¦ICP±¸05003035ºÅ

»¦¹«Íø°²±¸ 31010102002173ºÅ