-- ·|­û / µù¥U -- ¡@
¡@±b¸¹¡G
¡@±K½X¡G
¡@ | µù¥U | §Ñ°O±K½X
3/26 ·s®Ñ¨ì¡I 3/19 ·s®Ñ¨ì¡I 3/14 ·s®Ñ¨ì¡I 12/12 ·s®Ñ¨ì¡I
ÁʮѬyµ{¡EQ & A¡E¯¸°È¯d¨¥ª©¡E«ÈªA«H½c
¢x 3ds Max¢x Maya¢x Rhino¢x After Effects¢x SketchUp¢x ZBrush¢x Painter¢x Unity¢x
¢x PhotoShop¢x AutoCad¢x MasterCam¢x SolidWorks¢x Creo¢x UG¢x Revit¢x Nuke¢x
¢x C#¢x C¢x C++¢x Java¢x ¹CÀ¸µ{¦¡¢x Linux¢x ´O¤J¦¡¢x PLC¢x FPGA¢x Matlab¢x
¢x Àb«È¢x ¸ê®Æ®w¢x ·j¯Á¤ÞÀº¢x ¼v¹³³B²z¢x Fluent¢x VR+AR¢x ANSYS¢x ²`«×¾Ç²ß¢x
¢x ³æ´¹¤ù¢x AVR¢x OpenGL¢x Arduino¢x Raspberry Pi¢x ¹q¸ô³]­p¢x Cadence¢x Protel¢x
¢x Hadoop¢x Python¢x Stm32¢x Cortex¢x Labview¢x ¤â¾÷µ{¦¡¢x Android¢x iPhone¢x
¥i¬d®Ñ¦W,§@ªÌ,ISBN,3dwoo®Ñ¸¹
¸Ô²Ó®ÑÄy¤ÀÃþ

Selenium WebDriver 3.0 ¦Û°Ê¤Æ´ú¸Õ®Ø¬[¹ê¾Ô«ü«n

( ²Åé ¦r)
§@ªÌ¡G§d¾åµØ¡B¤ý±á©ýÃþ§O¡G1. -> µ{¦¡³]­p -> ºô¸ôª¦ÂÎ
ĶªÌ¡G
¥Xª©ªÀ¡G²MµØ¤j¾Ç¥Xª©ªÀSelenium WebDriver 3.0 ¦Û°Ê¤Æ´ú¸Õ®Ø¬[¹ê¾Ô«ü«n 3dWoo®Ñ¸¹¡G 47826
¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I

¡i¯Ê®Ñ¡j
NT°â»ù¡G 345 ¤¸

¥Xª©¤é¡G9/1/2017
­¶¼Æ¡G410
¥úºÐ¼Æ¡G0
¯¸ªø±ÀÂË¡G
¦L¨ê¡G¶Â¥Õ¦L¨ê»y¨t¡G ( ²Åé ª© )
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R
(½Ð¥ýµn¤J·|­û)
ISBN¡G9787302483175
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç
(²Åé®Ñ¤W©Ò­z¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, ­YŪªÌ»Ý­n½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ)
§@ªÌ§Ç¡G

ĶªÌ§Ç¡G

«e¨¥¡G

ÀHµÛ¤¬Ápºôªº°ª³tµo®i¡A¤¤°êªº¤¬Ápºô¹F¨ì¤F¤@­ÓªÅ«eªºÁcºa¤ô¥­¡A¼Æ»õ¶q¯Å¥Î¤áªº²£«~µn¤W¤F¤¤°êªº¤¬Ápºôµo®i»R»O¡Aªü¨½¤Ú¤Ú¡BÄË°T¡B¦Ê«×µ¥¦h­Ó¤¬Ápºô¥¨ÀY¤]¶}©l¦b¥@¬Éªº¤¬Ápºô»R»O¹ñÅSÀY¨¤¡A¤¬Ápºô¦æ·~ªº±q·~¤H­û¤]¹F¨ì¤F¤W¦Ê¸U¤Hªº³W¼Ò¡A¤¤°êªº¤¬Ápºô²£«~¤w¸g²`¤J¨ìºô¥Á¥Í¬¡ªº¦U­Ó¤è­±¡C
ÀHµÛ¤¬Ápºô¦æ·~¦b¤¤°êªº¨³²rµo®i¡A¹ï¤_¤¤°êªº³n¥ó¶}µo©M´ú¸Õ¦æ·~¤]´£¥X¤F§ó°ªªº§Þ³N­n¨D»P½è¶q­n¨D¡A³n¥ó´ú¸Õ±q·~ªÌªº§Þ³N¤ô¥­¤]³Q´£¤É¨ìªÅ«eªº°ª­n¨D¶¥¬q¡C¥H©¹§Ú­Ì¬Ý¨ì´ú¸Õ¤H­ûªº©Û¸u­«ÂI³£¬O¶È­­¤_¹ï´ú¸Õ¥Î¨Ò³]­p©M·~°Èªº²z¸Ñ¡A²{¤µ©Ò¬Ý¨ìªº§ó¦h´ú¸Õ¾¦ì¹ï´ú¸Õ¤H­û´£¥X¤F§ó°ªªº§Þ³N¯à¤O­n¨D¡C¨Ò¦p¡Aºë³q¤@ªù½sµ{»y¨¥¡A¼ô±xMySQL©ÎªÌOracle¼Æ¾Ú®w¡Aºë³q¦Û°Ê¤Æ´ú¸Õ©M©Ê¯à´ú¸Õ¡A¯à¿W¥ß¶}µo´ú¸Õ¤u¨ãµ¥¡C¬°¤F¯à§ó¦n¦a¾AÀ³¤¬ÁpºôªÀ·|ªºµo®i¼é¬y¡A³n¥ó´ú¸Õ±q·~ªÌ¥²¶·¦b§Þ³N¯à¤O¤W¤£Â_¦a´£¤É¦Û¤v¡A¤~¯à¯u¥¿¯¸¦b¾·~µo®iªºÅq®p¡C
¦Û°Ê¤Æ´ú¸Õ§Þ³N¹ï´ú¸Õ¤H­û¨Ó»¡¡A¬O¤@­Ó¥²­nªº°ª¯Å§Þ¯à­n¨D¡A¶V¨Ó¶V¦hªº´ú¸Õ±q·~ªÌ¦}¤£¥Ì¤_¤â¤u´ú¸Õ¡A³£«D±`§Æ±æ³q¹L¦Û°Ê¤Æªº¤è¦¡¨Ó´î¤Ö¬\ÀêµL¨ý¥B¤£Â_­«´_ªº¤â¤u´ú¸Õ³Ò°Ê¡CºÉºÞ¡A¥D¬yªºWeb¦Û°Ê¤Æ´ú¸Õ¶}·½¤u¨ãSelenium WebDriver¡A¤w¸g¦¨¬°²³¦h³n¥ó´ú¸Õ±q·~ªÌ¾Ç²ßªº¼öÂI¡A¦ý¬O¥«­±¤W°w¹ïSelenium¦Û°Ê¤Æ´ú¸Õ¤è­±ªº®ÑÄy«Ü¤Ö¡A°ò¤_¹ê½î¤è¦¡¨ÓÁ¿¸ÑSeleniumÀ³¥Î§Þ³Nªº®ÑÄy§ó¬O»ñ¤òÅ﨤¡C§Ú¦³©¯¨ü§d¦ÑÁܽСA±N§Ú¤u§@¤¤¹ê½î¤º®e»P§d¦Ñ±Ð¾Ç¤º®e¿Ä¦X¡A¤@°_½s¼g¤F³o¥»°ò¤_Python»y¨¥¹ê½î¾Þ§@ªºSelenium 3±Ð¾Ç®ÑÄy¡A¨Ó¸Ñ¨M³n¥ó´ú¸Õ¤H­û¾Ç²ß¦Û°Ê¤Æ´ú¸Õªº»Ý¨D¡C
Selenium¬O¤@­Ó¶}·½ªº´ú¸Õ¤u¨ã¡A¥Nªí¤F¥¼¨Ó´ú¸Õ¤u¨ãªºÁͶաF ¦ÓPython«h¬O¥þ¥@¬É³£¦b¥Îªº¤@ªù²¼ä¡B°ª®Ä¡B©ö¥Î¡BÀu¶®ªº½sµ{»y¨¥¡Aªì¾ÇªÌ¥u»Ý­nªá¤Ö¶qªº®É¶¡´N¯à¤W¤â¡A¦}§¹¦¨¤@©w¶qªº¶}µo¥ô°È¡C¦ý¥»®ÑµÛ­«ÂI¦bÁ¿¸ÑSeleniumªº¨Ï¥Î§Þ¥©¤W¡A¹ï¾Ç²ßPython»y¨¥¦³»Ý­nªºªB¤Í¡A½Ð¦Û¦æÁʶR¬ÛÃö¸ê®Æ©ÎªÌ§Q¥ÎÂ×´Iªººôµ¸¸ê·½¡C
¥»®Ñªö¥Î¹Ï¤å¦}­Zªº¤è¦¡¤À¨BÆJÁ¿¸ÑSeleniumªº¦UºØ¹ê¥Î§Þ¥©¡A¦}¥B´£¨Ñ³Q´ú¸Õ¹ï¶Hªº¹ê²{¥N½X©ÎªÌ³Q´ú¸Õ¹ï¶Hªº³X°Ýºô§}¡A¤è«KŪªÌ¦b¥»¦a·f«Ø¦Û¤vªº´ú¸ÕÀô¹Ò©ÎªÌ³X°Ý¤¬Ápºô¤Wªº³Q´ú¸Õºô§}¡A±q¦Ó¯à¶¶§Q¦a¶i¦æ¦Û°Ê¤Æ´ú¸Õ§Þ³Nªº¹ê½î¡C¸g¹L§Ú­Ì¼Æ¤ëªº¤£¾Ó§V¤O¡A¦¹®Ñ²×¤_¸ò¤j®a¨£­±¤F¡A§Æ±æ¯à°÷ÅýŪªÌ³q¹L¥»®Ñ²`¤J´x´¤Selenium 3ªº¨Ï¥Î§Þ¥©¡AÀ°§U¤j®a¦b¦Û°Ê¤Æ´ú¸Õ¤è¦V¤W¯à¤j®i¨­¤â¡C§Ú­Ì¬Û«H¡A³q¹L§Ú­Ì¤£Â_ªº§V¤O¡A¤@©w¥i¥H§ïÅܤ¤°ê´ú¸Õ¦æ·~§Þ³N§t¶q§Cªº²{ª¬¡C
§@¬°¤@­Ó¤g¥Í¤gªøªº´ú¸Õ¤H­û¡A¤£À´§Þ³N¡A¤u§@¤¤¸g±`·|³Q¦UºØ¤j©@¤Hª«¥á¨Ó¤@­Ó¤£®hªº²´¯«¡A¬Æ¦Ü¦³ªº¤H³s¤£®hªº²´¯«³£Ãi±o¥á¡Aª½±µµLµø¡A¦¹®É§Úªº¤º¤ß¬O«Ü±Y¼ìªº(¤j­ú)¡C2015¦~¡A¦b¤@­Ó¾÷½t¥©¦X¤U»{ÃѤF§d¦Ñ¡A¥LÂ×´Iªº´ú¸Õ¸gÅç©M¹Lµwªº§Þ³N³£Åý§Ú§éªA¡A§Ú´N¹³¬O¤@²Éíá»Ø¤¤ªººØ¤l¹J¨ì¤F¶§¥ú¡A«÷©R¦a±N¦Û¤v¸m¨­¤_³o¤ù³zµÛ·Å·xªºª÷¦âªº¶§¥ú¯D¤¤¡C¦]¬°¦n¤£®e©ö¹J¨£³o¤\¤@¦ì§C½Õ°øµØ¦³¤º²[ªº¤j¯«¡A°Z¯à©ñ¹L(°½¯º)¡A¤_¬O§Ú«Ü¼Ö·N´N¦º¥Ö¿àÁy¦a´ªµÛ§d¦Ñ¡A®M¥Lªº¦UºØ¥»»â¡C·í®Éªº¨C¤@¤Ñ°£¤F¦Y¶º¡B¤u§@¤Î¤Ö¶qªººÎı®É¶¡¡A¨ä§E®É¶¡¤£¬O¦YÂN(¬Ý®Ñ)¡A´N¬O©À¦ò(ºV¥N½X)¡A¨º¤é¤l¬Æ¬O¬\Àê¡A¬Æ¬OµL¨ý¡A´Á¬ßµÛ«w³½¯à¦³Â½¨­ªº¤@¤Ñ¡C§Ú«ÝCode¦pªìÅÊ¡ACode­h§Ú¤d¦Ê¹M(­W¯º)¡A¥b¦~®É¶¡¹L¥h¤F¡A³Q­h±o¤d½H¦Ê¤Õªº§Ú¤]ºâ¬OºN²MCodeªºµÊ®ð¤F¡A¶~¨ÓµL¨Æ¤]¯à¼g¤W´X¦Ê¦æ¤F¡Aºâ¬O¦³ÂIªY¼¢§a¡C
¦³¤F¤@©wªºCode¥\©³¦Z¡A¶}©l¥¿¦¡¶i¤J¦Û°Ê¤Æ¾Ç²ß¡C¦Û°Ê¤Æ´ú¸Õªº¾Ç²ß¬O¤@­Ó¤£Â_¹ê½î¡A¤£Â_Á`µ²¡A¤£Â_¿n²Öªº¹Lµ{¡C«Ü¦h¤H·|¦³¤@­Ó¿ù»~ªº»{ÃÑ¡A»{¬°¦Û°Ê¤Æ´ú¸Õ¤£´N¬O¤@­Ó¤u¨ãªº¨Ï¥Î¡A¤@­Ó½Õ¥Î§O¤H¼g¦nªºAPIªº¹Lµ{¤\¡A»Ý­n¨º¤\²`«pªºCode¥\©³¦³¦ó¥Î¡H®í¤£ª¾§A¦¹®É¶È¬O¤@­ÓToolBoy©ÎªÌToolGirl¡A­n·QÀH¤ß©Ò±ýªº§¹¦¨¦UºØ¦Û°Ê¤Æ´ú¸Õ¡AµL½×¬OWeb¦Û°Ê¤Æ¡B²¾°ÊºÝ¦Û°Ê¤Æ¡AÁÙ¬O©Ê¯à¦Û°Ê¤Æ¡A³£¥²¶·¦b¾Ö¦³¤@©wªºCode¥\©³¦Z¡A¤è¯à²z¸Ñ³o¨Ç¤u¨ã©³¼h¹ê²{ªº­ì²z¡A¦}¥B¯à¦b·í¤u¨ã¥»¨­¤£¯àº¡¨¬´ú¸Õ»Ý¨D®É¡AÁÙ¯àÀH¤ß©Ò±ý¦aÂX¥R©Î§ó§ï¡C²z¸Ñ¤F³o¨Ç¤u¨ãªº¹ê²{«ä·Q¡A¤]´N¬°±z·f«ØÄݤ_¦Û¤vªº´ú¸Õ®Ø¬[¥´¤U¤F°í¹êªº°ò¦¡C¸g¹L¥b¦~ªº¿äÆn»P³Q¿äÆn¡A¥[¤§¤u§@¤¤ªº¤£Â_¹ê½î¡A¤]¯à·f«Ø¨º¤\´X­Ó¦Û¤vÁٺ⺡·Nªº´ú¸Õ®Ø¬[¡A°µ±oÁ٬ƬO¶}¤ß(°½¯º)¡A¦Ó¥BÁÙ¯à³Q§d¦Ñ¨n¤W¡A¥s¨Ó½s¼g³o¥»®Ñ¡A¤]µÛ¹ê¦³ÂI¤p¶}¤ß(±o·N)¡C
³o¬O§Ú²Ä¤@¦¸¼g¤@¥»±MµÛ§Þ³NÃþªº®ÑÄy¡A²`²`¦a·Pı¨ì§âª¾ÃÑÂI¥Î³q«U©ö³qªº»y¨¥´y­z²M·¡¬O¤@¥ó¦h¤\¤£®e©öªº¨Æ¡A¬°¦¹§Ú§ë¤J¤F¤j¶qªº®É¶¡»Pºë¤O¨Ó²Õ´¥»®Ñªº»y¨¥¡A¦pªGÁÙ¬O¦s¦b¤£¨º¤\²LÅã©öÀ´ªº»y¥y¡A½Ð¥ý¹Á¸Õ±q¥N½X¼h­±¶i¦æ²z¸Ñ¡A¦ý¦pªG¦b¹ê½î¥»®Ñ¤¤¥N½X®Éµo¥Í¤F¿ù»~¡A½Ð¤£­nÃhºÃ¬O§Ú­Ì¥N½Xªº°ÝÃD(Ãa¯º)¡A½Ð¥ýÀˬd±zªºÀô¹Ò¬O§_¦³°ÝÃD¡AÂsÄý¾¹ª©¥»»PÅX°Êª©¥»¬O§_¤Ç°t¡A©Ò¨Ï¥ÎªºPython¥]ª©¥»¤§¶¡¬O§_¦s¦bª©¥»­Ý®eªº°ÝÃD¡APython¥N½X¬O§_¦s¦bÁY¶i°ÝÃDµ¥¡C¦pªG¤´µM¸Ñ¨M¤£¤F±zªº°ÝÃD¡AÅwªï§â¿ù»~¥á¨ìµ§ªÌªºÁy¤W¡A§Ú­Ì©w·|°¨¤£°±¿á¦aÀ°±z¸Ñ¨M¡C
¦B­á¤T¤Ø¡A«D¤@¤é¤§´H¡A§Æ±æ¤j®a¯à¦b¦Û°Ê¤Æ´ú¸Õ¾Ç²ßªº¹D¸ô¤W°µ¨ì³ÕÆ[¦Ó¬ù¨ú¡A«p¿n¦ÓÁ¡µo¡C³Ì¦Z¡A¯¬¤j®a¤u§@¶¶§Q¡A¸U¨Æ¦p·N¡C
¥»®Ñ¤º®e¤¶²Ð¦p¤U¡G
²Ä¤@½g°ò¦½g(²Ä1~8³¹)
²Ä1³¹¤¶²ÐSeleniumªºµo®i¾ú¥v¤Î²Õ¦¨Seleniumªº¤u¨ã®M¥ó¡A¦CÁ|¤FSelenium 1©MSelenium 2¤ä«ùªºÂsÄý¾¹©M¥­»O¡AÁ¿¸ÑSelenium RC©MWebDriverªº¹ê²{­ì²z¡A¦P®É¤]¤¶²Ð¤FSelenium 1¡BSelenium 2©MSelenium 3ªº¦U¦Û¯SÂI¤Î°Ï§O¡C
²Ä2³¹¤¶²Ð¦b¤é±`´ú¸Õ¤u§@¤¤±`¨£ªº¦Û°Ê¤Æ´ú¸Õ¥Ø¼Ð¡AÁ¿¸Ñ¦p¦óÀò±o¤½¥qºÞ²z¼h¹ï¤_¶}®i¦Û°Ê¤Æ´ú¸Õªº¤ä«ù¡B¦p¦ó¿Å¶q¦Û°Ê¤Æ´ú¸Õ¤u§@ªº§ë¤J²£¥X¤ñ¤Î¦b±Ó±¶¶}µo¤¤ªºÀ³¥Î¡B¥H¤Î¦Û°Ê¤Æ´ú¸Õ¤u§@ªº¤À¤u¤Î´ú¸Õ¤u¨ãªº¿ï¾Ü»P±À¼s¡A¤À¨É¦b¹ê»Ú¶µ¥Ø¤¤³Ì¨Îªº¹ê½î¸gÅç¡A»¡©ú¤F¾Ç²ßSelenium¤u¨ãªº¯à¤O­n¨D¡C
²Ä3³¹¤¶²Ð¨Ï¥ÎSelenium¤u¨ã®É©Ò»Ý­nªº¬ÛÃö»²§U´¡¥óFireBug©MFirePathªº¦w¸Ë¤Î¨Ï¥Î¤èªk¡C
²Ä4³¹¤¶²ÐSelenium IDEªº¦w¸Ë¡B¬É­±¿ï¶µªº§t¸q¡BIDEªº¨Ï¥Î¤èªk¡B¿ý¨î¸}¥»¤Î¾É¥X¸}¥»µ¥¡C
²Ä5³¹¤¶²ÐPython¶}µoÀô¹Ò©MPycharm¶°¦¨¶}µoÀô¹Òªº¦w¸Ë¡B°t¸m¤Î¨Ï¥Î¡C
²Ä6³¹¤¶²ÐWebDriverªº¦w¸Ë©M°t¸m¤èªk¡C
²Ä7³¹¥D­n¤¶²Ð³æ¤¸´ú¸Õªº°ò¥»ª¾ÃÑ¡A¦p¦ó¦b¦Û°Ê¤Æ´ú¸Õ¤¤¨Ï¥Î¥H¤Î¥Í¦¨´ú¸Õ³ø§i¡C
²Ä8³¹¥D­nÁ¿¸Ñ¦Û°Ê¤Æ´ú¸Õ¹Lµ{¤¤¨Ï¥Îªº­¶­±¤¸¯À©w¦ì¤èªk¡A¥]¬AID©w¦ì¡BName©w¦ì¡BÃì±µ¤å¦r©w¦ì¡BClass©w¦ì¡BXPath©w¦ì¤ÎCSS©w¦ì¡A±ÀÂ˨ϥÎXPath§@¬°­¶­±¤¸¯À©w¦ìªº¥D­n¤èªk¡C
²Ä¤G½g¹ê¾ÔÀ³¥Î½g(²Ä9~11³¹)
²Ä9³¹Á¿¸Ñ¦p¦ó¨Ï¥ÎWebDriver¤u¨ã¤À§OÅX°ÊIEÂsÄý¾¹¡BChromeÂsÄý¾¹¥H¤ÎFirefoxÂsÄý¾¹¡A¶i¦æ¦Û°Ê¤Æ´ú¸Õ¡C
²Ä10³¹³q¹L¹ê¨Ò¥þ­±Á¿¸ÑWebDriver°ò¦API¡C
²Ä11³¹³q¹L¹ê¨Ò¥þ­±Á¿¸ÑWebDriver°ª¯ÅAPI¡A¦}´£¨Ñ¤@¨Ç¸Ñ¨M¹ê»Ú°ÝÃDªº¤èªk¡C
²Ä¤T½g¦Û°Ê¤Æ´ú¸Õ®Ø¬[·f«Ø½g(²Ä12~15³¹)
²Ä12³¹Á¿¸Ñ¼Æ¾ÚÅX°Êªº·§©À¡A¦}°ò¤_Excel¡BXML¡BMySQL¤Î³æ¤¸´ú¸Õ®Ø¬[µ²¦Xddt¶i¦æ¼Æ¾ÚÅX°Ê´ú¸Õ¡C
²Ä13³¹Á¿¸Ñlettuce¦æ¬°ÅX°Ê®Ø¬[¦b¦Û°Ê¤Æ´ú¸Õ¤¤ªº¨Ï¥Î¡A¤À§O°ò¤_­^¤å©M¤¤¤å¶i¦æ¹ê¨ÒÁ¿¸Ñ¡C
²Ä14³¹³q¹L¹ê¨Ò¥þ­±Á¿¸Ñ¦p¦ó°ò¤_Selenium Grid¶i¦æ¤À¥¬¦¡¦Û°Ê¤Æ´ú¸Õ¡C
²Ä15³¹²`¤JÁ¿¸Ñ¦p¦ó±q¹s¶}©l·f«Ø¤@­Ó¼Æ¾ÚÅX°Ê´ú¸Õ®Ø¬[¡BÃöÁä¦rÅX°Ê´ú¸Õ®Ø¬[¥H¤Î¼Æ¾ÚÅX°Ê»PÃöÁä¦rÅX°Ê²V¦Xªº´ú¸Õ®Ø¬[¡A¦}´£¨Ñ§¹¾ãªº®Ø¬[¥N½X¡C¦¹³¹¸`¬°¥»®Ñ³Ìºî¦X¡B³Ì­«­nªº³¹¸`¡A«ØijŪªÌ¦b¾\Ū§¹«e­±©Ò¦³³¹¸`¦Z¦A¾\Ū¦¹³¹¸`¡C
²Ä¥|½g±`¨£°ÝÃD©M¸Ñ¨M¤èªk(²Ä16³¹)
²Ä16³¹Á¿¸ÑWebDriver¨Ï¥Î¹Lµ{¤¤±`¨£ªººÃÃø°ÝÃD¤Î¸Ñ¨M¿ìªk¡A¤è«KŪªÌ¦b¨Ï¥ÎWebDriverªº¹Lµ{¤¤¹J¨ì°ÝÃD®É¶i¦æ¬d¾\¡C
¯S§O­PÁÂ
·PÁ§ڭ̪º¦nªB¤Í³¯¨}­x¡B§õ¦¿©M¤ý¯Eªá¶O¤j¶qªº®É¶¡»Pºë¤OÀ°§Ú­Ì®Õ¹ï®Ñ½Z¡Aµo²{¤F¤£¤Ö®Ñ¼gªº¿ù»~¡B±âÀßÃøÀ´ªº»y¥y¥H¤Î¥N½Xªº¿ù»~¡A¦b¦¹µ§ªÌ­Ì¯u¸Û¦a·PÁÂ¥L­Ì¹ï¥»®Ñ°µ¥Xªº°^Äm¡AÀ°§U§Ú­Ì§¹¦¨³o¥ó«D±`¦³·N¸qªº¨Æ±¡¡C
§d¾åµØ¤ý±á©ý
2017¦~6¤ë
¤º®e²¤¶¡G

¥»®Ñ¥H¤À¨ÉSelenium WebDriver¹ê¾Ô¸gÅ笰­n¡A­P¤O¤_¬°TesterÁ¿¸Ñ¶}·½ªºWeb¦Û°Ê¤Æ´ú¸Õ¤u¨ãªº­ì²z¡Bapi±µ¤f¹ê¨Ò¡Bunittest¡B¤­¤j®Ø¬[¹ê¾Ô¡]¦æ¬°ÅX°Ê¡B¤À¥¬¦¡´ú¸Õ®Ø¬[¡B¼Æ¾ÚÅX°Ê´ú¸Õ®Ø¬[¡BÃöÁäµüÅX°Ê´ú¸Õ®Ø¬[¡B²V¦X¼Ò¦¡´ú¸Õ®Ø¬[¡^¥H¤Î¦Û°Ê¤Æ´ú¸Õ¤¤±`¨£ªº°ÝÃD³B²z¡C
¥»®Ñ¬J¥iÅýªì¾ÇªÌ±q¤Jªù¨ìºë³q¡A´`§Çº¥¶i¡F ¤]¥iÀ°¤¤°ª¯ÅTesterÉq¹ê§Þ¯à¡A±q§Î¶H¨ì©â¶H¡A´£¨Ñ´ú¸Õ«ä·Q¤¤§ó¦hªº¥i¯à©Ê¡C
¥Ø¿ý¡G

²Ä¤@½g°ò¦½g
²Ä1³¹Selenium²¤¶
1.1Seleniumªº«e¥@¤µ¥Í
1.2Selenium¤u¨ã®M¥ó¤¶²Ð
1.3Selenium¤ä«ùªºÂsÄý¾¹©M¥­»O
1.3.1SeleniumIDE¡BSelenium1©MSeleniumRC¤ä«ùªºÂsÄý¾¹©M¥­»O
1.3.2Selenium2¡]WebDriver¡^¤ä«ùªºÂsÄý¾¹
1.4SeleniumRC©MWebDriverªº¹ê²{­ì²z
1.4.1SeleniumRCªº¹ê²{­ì²z
1.4.2WebDriverªº¹ê²{­ì²z
1.4.3Selenium1.0©MWebDriverªº¯SÂI
1.5Selenium3ªº·s¯S©Ê
²Ä2³¹¦Û°Ê¤Æ´ú¸Õ¨ºÂI¨Æ¨à
2.1¦Û°Ê¤Æ´ú¸Õ¥Ø¼Ð
2.2ºÞ²z¼hªº¤ä«ù
2.3§ë¤J²£¥X¤ñ
2.4±Ó±¶¶}µo¤¤ªº¦Û°Ê¤Æ´ú¸ÕÀ³¥Î
2.5¦Û°Ê¤Æ´ú¸Õ¤H­û¤À¤u
2.6¦Û°Ê¤Æ´ú¸Õ¤u¨ãªº¿ï¾Ü©M±À¼s¨Ï¥Î
2.6.1¦Û°Ê¤Æ´ú¸Õ¤u¨ãªº¿ï¾Ü
2.6.2SeleniumWebDriver©MQTP¤u¨ãªº¯SÂI¤ñ¸û
2.7¦b¶µ¥Ø¤¤¹ê¬I¦Û°Ê¤Æªº³Ì¨Î¹ê½î
2.8¾Ç²ßSelenium¤u¨ãªº¯à¤O­n¨D
²Ä3³¹¦Û°Ê¤Æ´ú¸Õ»²§U¤u¨ã
3.1¦w¸ËFirefoxÂsÄý¾¹
3.2¦w¸ËFirebug´¡¥ó
3.3Firebug´¡¥óªº¨Ï¥Î
3.3.1±Ò°ÊFirebug´¡¥ó
3.3.2Firebug´¡¥óªº±`¥Î¥\¯à
3.4¦w¸ËFirePath´¡¥ó
3.5FirePath´¡¥óªº¨Ï¥Î
3.5.1FirePath´¡¥ó¤¤¨Ï¥ÎXPath©w¦ì¤è¦¡
3.5.2FirePath´¡¥ó¤¤¨Ï¥ÎCSS©w¦ì¤è¦¡
3.6IEÂsÄý¾¹¦Û±aªº»²§U¶}µo¤u¨ã
²Ä4³¹SeleniumIDE
4.1SeleniumIDEªº©w¸q
4.2¦w¸ËSeleniumIDE
4.2.1±qSelenium©xºô¦w¸Ë
4.2.2¨Ï¥ÎÂ÷½uXPI¦w¸Ë¤å¥ó¦w¸Ë
4.3SeleniumIDE´¡¥ó¬É­±©M¥\¯à¤¶²Ð
4.3.1¥D¬É­±
4.3.2±`¥Î¤u¨ãÄæ
4.3.3¸}¥»½s¿è°Ï°ì
4.4±`¥Îµæ³æ¶µ
4.4.1¡§¤å¥ó¡¨µæ³æ
4.4.2¡§½s¿è¡¨µæ³æ
4.4.3Actionsµæ³æ
4.4.4Optionµæ³æ
4.5¿ý¨î©M¦^©ñ¸}¥»¹ê¨Ò
4.6SeleniumIDE¸}¥»¤¶²Ð¡X¡XSelenese
4.7SeleniumIDEªº°ò¥»©R¥O¨Ï¥Î¹ê¨Ò
4.7.1waitForText¡BverifyText©MassertText©R¥O
4.7.2storeTitle©R¥O©Mecho©R¥O
4.7.3openWindow©R¥O©MselectWindow©R¥O
4.8±qSeleniumIDE¾É¥X¸}¥»
4.8.1¾É¥X¸}¥»¤å¥ó
4.8.2±NSeleniumIDE´¡¥ó¤¤ªº¬Y¦æ©R¥O¾É¥X¬°Python¸}¥»
²Ä5³¹·f«ØPythonÀô¹Ò©MPyCharm¶°¦¨¶}µoÀô¹Ò
5.1¦w¸ËPython¦}°t¸mPythonÀô¹Ò
5.1.1¤U¸ü¦}¦w¸ËPython¸ÑÄÀ¾¹
5.1.2°t¸mPythonÀô¹Ò
5.1.3¦w¸Ëpip
5.2¦w¸ËPython¶°¦¨¶}µoÀô¹ÒPyCharm
5.3·s«Ø¤@­ÓPython¤uµ{
²Ä6³¹Selenium3¡]WebDriver¡^ªº¦w¸Ë
6.1¦bPython¤¤¦w¸ËWebDriver
6.2²Ä¤@­ÓWebDriver¸}¥»
6.3¦UÂsÄý¾¹ÅX°Êªº¨Ï¥Î¤èªk
²Ä7³¹³æ¤¸´ú¸Õ®Ø¬[ªº¨Ï¥Î¤¶²Ð
7.1³æ¤¸´ú¸Õªº©w¸q
7.2unittest³æ¤¸´ú¸Õ®Ø¬[
7.2.1unittestªº©w¸q
7.2.2unittest®Ø¬[ªº4­Ó­«­n·§©À
7.2.3³æ¤¸´ú¸Õ¥[¸ü¤èªk
7.2.4´ú¸Õ¥Î¨Ò
7.2.5´ú¸Õ¶°¦X
7.2.6«ö·Ó¯S©w¶¶§Ç°õ¦æ´ú¸Õ¥Î¨Ò
7.2.7©¿²¤¬Y­Ó´ú¸Õ¤èªk
7.2.8©R¥O¦æ¼Ò¦¡°õ¦æ´ú¸Õ¥Î¨Ò
7.2.9§å¶q°õ¦æ´ú¸Õ¼Ò¶ô
7.2.10±`¥ÎªºÂ_¨¥¤èªk
7.2.11¨Ï¥ÎHTMLTestRunner¥Í¦¨HTML´ú¸Õ³ø§i
7.3¦bunittest¤¤¹B¦æ²Ä¤@­ÓWebDriver´ú¸Õ¥Î¨Ò
²Ä8³¹­¶­±¤¸¯À©w¦ì¤èªk
8.1©w¦ì­¶­±¤¸¯À¤èªk¶×Á`
8.2¨Ï¥ÎID©w¦ì
8.3¨Ï¥Îname©w¦ì
8.4¨Ï¥ÎÃì±µªº¥þ³¡¤å¦r©w¦ì
8.5¨Ï¥Î³¡¤ÀÃì±µ¤å¦r©w¦ì
8.6¨Ï¥ÎHTML¼Ðñ¦W©w¦ì
8.7¨Ï¥ÎClass¦WºÙ©w¦ì
8.8¨Ï¥ÎXPath©w¦ì
8.8.1XPathªº©w¸q
8.8.2XPath¸`ÂI
8.8.3XPath©w¦ì»yªk
8.8.4XPath¹Bºâ²Å
8.9CSS©w¦ì
8.9.1CSSªº·§©À
8.9.2CSS©w¦ì»yªk
8.9.3XPath©w¦ì»PCSS©w¦ìªº¤ñ¸û
8.10ªí®æªº©w¦ì
8.10.1¹M¾úªí®æ©Ò¦³ªº³æ¤¸®æ
8.10.2©w¦ìªí®æ¤¤ªº¬Y­Ó¤¸¯À
8.10.3©w¦ìªí®æ¤¤ªº¤l¤¸¯À
²Ä¤G½g¹ê¾ÔÀ³¥Î½g
²Ä9³¹WebDriverªº¦hÂsÄý¾¹´ú¸Õ
9.1¨Ï¥ÎIEÂsÄý¾¹¶i¦æ´ú¸Õ
9.2¨Ï¥ÎFirefoxÂsÄý¾¹¶i¦æ´ú¸Õ
9.3¨Ï¥ÎChromeÂsÄý¾¹¶i¦æ´ú¸Õ
²Ä10³¹WebDriverAPI¸Ô¸Ñ
10.1³X°Ý¬Y­Óºô§}
10.2ºô­¶ªº«e¶i©M¦Z°h
10.3¨ê·s·í«eºô­¶
10.4ÂsÄý¾¹µ¡¤f³Ì¤j¤Æ
10.5Àò¨ú¦}³]¸m·í«eµ¡¤fªº¦ì¸m
10.6Àò¨ú¦}³]¸m·í«eµ¡¤fªº¤j¤p
10.7Àò¨ú­¶­±ªºTitleÄÝ©Ê­È
10.8Àò¨ú­¶­±HTML·½¥N½X
10.9Àò¨ú·í«e­¶­±ªºURL¦a§}
10.10Àò¨ú»P¤Á´«ÂsÄý¾¹µ¡¤f¥y¬`
10.11Àò¨ú­¶­±¤¸¯Àªº°ò¥»«H®§
10.12Àò¨ú­¶­±¤¸¯Àªº¤å¥»¤º®e
10.13§PÂ_­¶­±¤¸¯À¬O§_¥i¨£
10.14§PÂ_­¶­±¤¸¯À¬O§_¥i¾Þ§@
10.15Àò¨ú­¶­±¤¸¯ÀªºÄÝ©Ê
10.16Àò¨ú­¶­±¤¸¯ÀªºCSSÄÝ©Ê­È
10.17²MªÅ¿é¤J®Ø¤¤ªº¤º®e
10.18¦b¿é¤J®Ø¤¤¿é¤J«ü©w¤º®e
10.19³æÀ»«ö¶s
10.20ÂùÀ»¬Y­Ó¤¸¯À
10.21¾Þ§@³æ¿ï¤U©Ô¦Cªí
10.21.1¹M¾ú©Ò¦³¿ï¶µ¦}¥´¦L¿ï¶µÅã¥Üªº¤å¥»©M¿ï¶µ­È
10.21.2¿ï¾Ü¤U©Ô¦Cªí¤¸¯Àªº¤TºØ¤èªk
10.22Â_¨¥³æ¿ï¦Cªí¿ï¶µ­È
10.23¾Þ§@¦h¿ïªº¿ï¾Ü¦Cªí
10.24¾Þ§@¥i¥H¿é¤Jªº¤U©Ô¦Cªí¡]¿é¤Jªº¦P®É¼ÒÀÀ«öÁä¡^
10.25¾Þ§@³æ¿ï®Ø
10.26¾Þ§@´_¿ï®Ø
10.27Â_¨¥­¶­±·½½X¤¤ªºÃöÁä¦r
10.28¹ï·í«eÂsÄý¾¹µ¡¤fºI«Ì
10.29©ì«û­¶­±¤¸¯À
10.30¼ÒÀÀÁä½L³æ­Ó«öÁä¾Þ§@
10.31¼ÒÀÀ²Õ¦X«öÁä¾Þ§@
10.31.1³q¹LWebDriver¤º«Øªº¼Ò¶ô¼ÒÀÀ²Õ¦XÁä
10.31.2³q¹L²Ä¤T¤è¼Ò¶ô¼ÒÀÀ²Õ¦X«öÁä
10.31.3³q¹L³]¸m°Å¶KªO¹ê²{´_¨î©MÖ߶K
10.32¼ÒÀÀ¹«¼Ð¥kÁä
10.33¼ÒÀÀ¹«¼Ð¥ªÁä«ö¤U»PÄÀ©ñ
10.34«O«ù¹«¼ÐÄa°±¦b¬Y­Ó¤¸¯À¤W
10.35§PÂ_­¶­±¤¸¯À¬O§_¦s¦b
10.36Áô¦¡µ¥«Ý
10.37Å㦡µ¥«Ý
10.38Å㦡µ¥«Ý¤¤´Á±æªº³õ´º
10.39¨Ï¥ÎTitleÄÝ©ÊÃѧO©M¾Þ§@·s¼u¥XªºÂsÄý¾¹µ¡¤f
10.40³q¹L­¶­±ªºÃöÁ䤺®eÃѧO©M¾Þ§@·sÂsÄý¾¹µ¡¤f
10.41¾Þ§@Frame¤¤ªº­¶­±¤¸¯À
10.42¨Ï¥ÎFrame¤¤ªºHTML·½½X¤º®e¾Þ§@Frame
10.43¾Þ§@IFrame¤¤ªº­¶­±¤¸¯À
10.44¾Þ§@JavaScriptªºAlert¼uµ¡
10.45¾Þ§@JavaScriptªºconfirm¼uµ¡
10.46¾Þ§@JavaScriptªºprompt¼uµ¡
10.47¾Þ§@ÂsÄý¾¹ªºCookie
10.48«ü©w­¶­±¥[¸ü®É¶¡
²Ä11³¹WebDriver°ª¯ÅÀ³¥Î
11.1¨Ï¥ÎJavaScript¾Þ§@­¶­±¤¸¯À
11.2¾Þ§@Web­¶­±ªººu°Ê±ø
11.3¦bAjax¤è¦¡²£¥Íªº¯B°Ê®Ø¤¤¡A³æÀ»¿ï¾Ü¥]§t¬Y­ÓÃöÁä¦rªº¿ï¶µ
11.4µ²§ôWindows¤¤ÂsÄý¾¹ªº¶iµ{
11.5§ó§ï¤@­Ó­¶­±¹ï¶HªºÄÝ©Ê­È
11.6µL¤H¤u¤z¹w¦a¦Û°Ê¤U¸ü¬Y­Ó¤å¥ó
11.7µL¤H¤u¤z¹w¦a¦Û°Ê¤W¶Çªþ¥ó
11.7.1¨Ï¥ÎWebDriverªºsend_keys¤èªk¤W¶Ç¤å¥ó
11.7.2¼ÒÀÀÁä½L¾Þ§@¡A¹ê²{¤W¶Ç¤å¥ó
11.7.3¨Ï¥Î²Ä¤T¤è¤u¨ãAutoIt¤W¶Ç¤å¥ó
11.8¥kÁä¥t¦s¬°¤U¸ü¤å¥ó
11.9¾Þ§@¤é´Á±±¥ó
11.10±Ò°Ê±a¦³¥Î¤á°t¸m«H®§ªºFirefoxÂsÄý¾¹µ¡¤f
11.11UI¹ï¶H®w
11.12¾Þ§@´I¤å¥»®Ø
11.13ºë½T¤ñ¸û­¶­±ºI¹Ï¹Ï¤ù
11.14°ª«GÅã¥Ü¥¿¦b¾Þ§@ªº­¶­±¤¸¯À
11.15ÂsÄý¾¹¤¤·s¶}¼Ðñ­¶¡]Tab¡^
11.16´ú¸Õ¹Lµ{¤¤µo¥Í²§±`©ÎÂ_¨¥¥¢±Ñ®É¶i¦æ«Ì¹õºI¹Ï
11.17¨Ï¥Î¤é§Ó¼Ò¶ô°O¿ý´ú¸Õ¹Lµ{¤¤ªº«H®§
11.18«Ê¸Ë¾Þ§@ªí®æªº¤½¥ÎÃþ
11.19´ú¸ÕHTML5»y¨¥¹ê²{ªºµøÀW¼½©ñ¾¹
11.20¦bHTML5ªºµe¥¬¤¸¯À¤W¶i¦æøµe¾Þ§@
11.21¾Þ§@HTML5¦sÀx¹ï¶H
11.22¨Ï¥ÎChromeÂsÄý¾¹¦Û°Ê±N¤å¥ó¤U¸ü¨ì«ü©w¸ô®|
11.23­×§ïChrome³]¸m°°¸Ë¦¨¤â¾÷M¯¸
11.24«Ì½ªChromeªºúQúQignoreúQcertificateúQerrors´£¥Ü¤Î¸T¥ÎÂX®i´¡¥ó¦}¹ê²{
µ¡¤f³Ì¤j¤Æ
11.25¸T¥ÎChromeÂsÄý¾¹ªºPDF©MFlash´¡¥ó
11.26¸T¥ÎIEªº«OÅ@¼Ò¦¡
11.27±Ò°ÊFirefoxªº¦P®É¥´¶}Firebug
11.28¸T¥ÎChromeÂsÄý¾¹¤¤ªºImage¥[¸ü
11.29¸T¥ÎFirefoxÂsÄý¾¹¤¤ªºCSS¡BFlash¤ÎImage¥[¸ü
²Ä¤T½g¦Û°Ê¤Æ´ú¸Õ®Ø¬[·f«Ø½g
²Ä12³¹¼Æ¾ÚÅX°Ê´ú¸Õ
12.1¼Æ¾ÚÅX°Ê·§­z
12.2¼Æ¾ÚÅX°Ê³æ¤¸´ú¸ÕªºÀô¹Ò·Ç³Æ
12.3¨Ï¥Îunittest©Mddt¶i¦æ¼Æ¾ÚÅX°Ê
12.4¨Ï¥Î¼Æ¾Ú¤å¥ó¶i¦æ¼Æ¾ÚÅX°Ê
12.5¨Ï¥ÎExcel¶i¦æ¼Æ¾ÚÅX°Ê´ú¸Õ
12.6¨Ï¥ÎXML¶i¦æ¼Æ¾ÚÅX°Ê´ú¸Õ
12.7¨Ï¥ÎMySQL¼Æ¾Ú®w¶i¦æ¼Æ¾ÚÅX°Ê´ú¸Õ
²Ä13³¹¦æ¬°ÅX°Ê´ú¸Õ
13.1¦æ¬°ÅX°Ê¶}µo©Mlettuce²¤¶
13.2¦æ¬°ÅX°Ê´ú¸ÕªºÀô¹Ò·Ç³Æ
13.3²Ä¤@­Ó­^¤å»y¨¥¦æ¬°ÅX°Ê´ú¸Õ
13.4³q¹LÃþ¼Ò¦¡¹ê²{­^¤å¦æ¬°ÅX°Ê
13.5lettuce®Ø¬[ªº¨BÆJ¼Æ¾Úªí®æ
13.6¨Ï¥ÎWebDriver¶i¦æ­^¤å»y¨¥ªº¦æ¬°¼Æ¾ÚÅX°Ê´ú¸Õ
13.7¨Ï¥ÎWebDriver¶i¦æ¤¤¤å»y¨¥ªº¦æ¬°¼Æ¾ÚÅX°Ê´ú¸Õ
13.8§å¶q°õ¦æ¦æ¬°ÅX°Ê¥Î¨Ò¶°
13.9¸Ñ¨M¤¤¤å´y­zªº³õ´º¿é¥X¨ì±±¨î»O¶Ã½X
²Ä14³¹SeleniumGridªº¨Ï¥Î
14.1SeleniumGrid²¤¶
14.2¤À¥¬¦¡¦Û°Ê¤Æ´ú¸ÕÀô¹Ò·Ç³Æ
14.3SeleniumGridªº¨Ï¥Î¤èªk
14.3.1»·µ{½Õ¥ÎFirefoxÂsÄý¾¹¶i¦æ¦Û°Ê¤Æ´ú¸Õ
14.3.2»·µ{½Õ¥ÎIEÂsÄý¾¹¶i¦æ¦Û°Ê¤Æ´ú¸Õ
14.3.3»·µ{½Õ¥ÎChromeÂsÄý¾¹¶i¦æ¦Û°Ê¤Æ´ú¸Õ
14.3.4¦P®É¤ä«ù¦h­ÓÂsÄý¾¹¶i¦æ¦Û°Ê¤Æ´ú¸Õ
14.4µ²¦Xunittest§¹¦¨¤À¥¬¦¡¦Û°Ê¤Æ´ú¸Õ
14.5¹ê²{¦}µoªº¤À¥¬¦¡¦Û°Ê¤Æ´ú¸Õ
²Ä15³¹¦Û°Ê¤Æ´ú¸Õ®Ø¬[ªº·f«Ø¤Î´ú¸Õ¹ê¾Ô
15.1¦Û°Ê¤Æ´ú¸Õ®Ø¬[
15.2¼Æ¾ÚÅX°Ê®Ø¬[¤Î¹ê¾Ô
15.3ÃöÁä¦rÅX°Ê®Ø¬[¤Î¹ê¾Ô
15.4ÃöÁä¦r&&¼Æ¾Ú²V¦XÅX°Ê®Ø¬[¤Î¹ê¾Ô
²Ä¥|½g±`¨£°ÝÃD©M¸Ñ¨M¤èªk
²Ä16³¹¦Û°Ê¤Æ´ú¸Õ±`¨£°ÝÃD©M¸Ñ¨M¤èªk
16.1¦p¦óÅýWebDriver¤ä«ùIE11
16.2¸Ñ¨M¡§UnexpectederrorlaunchingInternetExplorer.Browserzoom
levelwassetto75%¡]©Î¨ä¥L¦Ê¤À¤ñ¡^¡¨ªº¿ù»~
16.3¸Ñ¨M¬Y¨ÇIEÂsÄý¾¹¤¤¿é¤J¼Æ¦r©M­^¤å¯S§OºCªº°ÝÃD
16.4¸Ñ¨MFirefoxÂsÄý¾¹ªºcanûÐtaccessdeadobject²§±`
16.5±`¨£²§±`©M¸Ñ¨M¤èªk
§Ç¡G