??????????????????????????????????????????APP??????????????????????????????汾?????????д????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????е????????
????????????????????????м????????????????????????Ч????????β?????????????????????????????????δ/??????????????Σ?????????????????????????ζ??????????????????????ò??????????г?????????????????????????????????ζ??
???????????κ???ò??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????ò????????????
?????????????????????
????1??????????????????????????????????в?????в???
??????в???????
????1) ??в???????????????????
????2) ??в??????????????????·??
????3) ??в?????????????Stub??Mock???????????
????4) ??в????????????????Test Fixture????в???????
??????в???????
????1) ??в???????????????????????????
????2) ??в??????e?в?????????????
????2???????????????????
????1) ????????????????????????
????2) ???漶?????????????????????????
????3) ????????磺Selenium/QTP??
????3??Э?鼶?????????
????1) ?????????????????????????
????2) ???漶?????????????????????
????3) Э??????????????????????????????????????????????漶?????
????4) Э?鼶??????????????????????????????????
????????????????????????????????
????1??web UI?????????

????2??????????
????B/S??
????· WebDriver ?????ù???????? ??????д????????????????
????· QTP ???????????????C/S??? ???????????VBS???????
????C/S??
????· QTP
????· ????????
????· AutoIT ???
????APP??
????1??Android??
????· UIAutomator ?????????????????APP????????????????java
????· Monkey ?????????UI?????????????????ò???app???????
????· MonkeyRunner ??????????????????????λ?????????
????· Robotium ????????????????????????webview???????????? ????java
????· Appium ???Hybrid app?????????????????????????д???java??ruby??python??c#……?????????toast????
????· Calabash ????Java ?????Robotium ????????????
????2??IOS
????· UIAutomation ???????
????· Appium ?????android?? ????api???????£??????????
????· Calabash ?????android?? ????api???????£??????????
???????????????????????????Webdriver +Python????????£?
????1) Webdriver (Selenium2)?????????Web??ó????????????????????????????API?????????????????web?????????????????????á???????y??и??????????????????????С???????????????????????????Selenium 1??Selenium-RC??????Selenium 2??API???????????????????????????????????Webdriver????????????????????κβ??????????????????????????????????????????????????????????Selenium 1????????????????
????????????????????????????????Selenium 1??????????????? JavaScript?????в??????Selenium 2??????????????????????????????????????????
????Selenium 2??????????????????????????????????Web????е? JavaScript?????????????????????????????????????????JavaScript??????????????????????????????????Selenium 2 ?????ò??????????????????????WebDriver ???Firefox ??FirefoxDriver????IE??InternetExplorerDriver????Opera??OperaDriver????Chrome ??ChromeDriver?????safari??SafariDriver????
???????????Android??Selendroid????iPhone??Appium?????????ò????????Selenium 2??????????HtmlUnit??????????????HtmlUnitDriver???????webkit????????????phantomjs??Selenium 2 API???????Java??C#??PHP??Python??Perl??Ruby?????????????????????????????????????????????????
????2) Python???????
????3?? Webdriver??·??
????· ?????????
????· ???webdriver API
????·???????λ??selenium ????id??name??class name?? tag name??link text??partial link text?? xpath??css?????λ??????
????· ??????????в??????????????????????????????????????????????????????
????· ????????
????· ???????????????????????????????????????????????
????· ??????????????
????????????????????????????????
????1?? ???????
????· ????: Eclipse + pydev???
????1. Eclipse??дJ(rèn)AVA??IDE?? ????????????????????С??  ?????Eclipse?? ???дPython????JAVA ???????
????2. Eclipse?? ???????
????3. Eclipse?????? ??????Mac???Windows????
????· ???Python
????????????http://www.python.org/
????Python ?? Python 2 ?? Python 3 ?????汾??????Щ????????????Python 2.7 http://python.org/getit/
????· ???????????
????????Python????????????????????->????->???->????????->???????е?PATH?PATH:“C:Python27;”
???????????????????ó???????????????????????python????????"python *.py"????python??????
???????????????????"python*.py"????python?????????????????*.py???????????????????????PATHEXT???PATHEXT=PATHEXT;.PY;.PYM
????· ????setuptools
???????????????Win7 32λ???????????setuptools-0.6c11.win32-py2.7??setuptools????????python??????????????????ú??????????(pip??????setuptools????)
??????????????????μ???棺https://pypi.python.org/pypi/setuptools
????· ???pip????
????cmd??????????cd???????C:Python27Scripts> ????? easy_install pip?? ?????????
????????easy_install??????
????????????
????easy_install PackageName
?????????????
????easy_install -U PackageName
????????????easy_install -m PackageName
????????????
????easy_install –showhelp
???????????????類?????????????????????????????????????£?????????????
??????????pip tar.gz????????????????pip-1.5.4.tar??????????windows??cmd?У?????????????setup.py install
????· ???selenium client Drivers
????????pip install selenium ???? pip install –U selenium??????????????????????????? ??????????
???????????????類??????????????????????????Ч?????????????????????£?
????????selenium??
????????????https://pypi.python.org/pypi/selenium
?????????????selenium-2.40.0.tar.gz
???????????selenium??????????????????????????????????????????C:Python27Libsite-packages??
??????CMD??????????????????????????  Python  setup.py install

????· ???JAVA JDK
????????????http://www.oracle.com/technetwork/java/javase/downloads/index.html
????Eclipse ???????????JAVA JDK?????????
????· ???Eclipse
????????????http://www.eclipse.org/downloads/
?????????????????????????  Eclipse??????????