我稱呼它爲擼代碼,也就是按照業務邏輯直接hard code。基本上初學者都會這樣折騰,固然,折騰了一段時間就會以爲很操蛋,本身都不想看本身寫的代碼。web
比較流行的設計模式,高度解耦,初學者看起來會以爲有點操蛋,可是瞭解了邏輯以後,會發現這樣作很是棒,維護起來簡直是輕鬆加愉快。json
通用框架就是比較高級的作法了,實施起來比較麻煩,若是水平到了,這種方式確定是最好的,利用關鍵字來驅動程序,是比較高級的境界。缺點就是比較難。。。。設計模式
整個設計思路是基於Page Object模式,以下圖:架構
什麼是Page Object?app
When you write tests against a web page, you need to refer to elements within that web page in order to click links and determine what’s displayed. However, if you write tests that manipulate the HTML elements directly your tests will be brittle to changes in the UI. A page object wraps an HTML page, or fragment, with an application-specific API, allowing you to manipulate page elements without digging around in the HTML.框架
原來是Web端的模式,搬到移動端來,就是把頁面分拆成一個一個元素,如示意圖所示,我拆分爲元素數據、元素定位、元素操做、測試步驟這麼些東西。測試
這種模式整個架構看起來比直接擼代碼複雜了不少,不過當遇到一些坑爹的問題時,尤爲開發頻繁改動的時候,這種設計模式的優點就出來了,好比開發改了元素的ID那些東西,那麼咱們只要修改相應ID就好了,全部和這個元素相關的都直接關聯修改了,,而直接擼代碼,涉及到的地方可能會有不少,改動起來很麻煩。查找方法,測試步驟什麼的都不用改,維護起來相對輕鬆。ui
項目結構:spa
____.DS_Store
|____config.py |____Data | |____data.json |____img | |____.DS_Store | |____caixun | | |____gupiao.png | | |____gupiaoneirong.png | | |____jijin.png | | |____jijinneirong.png | | |____tuijian.png | | |____tuijianneirong.png | | |____xinsanban.png | | |____xinsanbanneirong.png | | |____zhaiquan.png | | |____zhaiquanneirong.png | | |____黃金.png |____Report |____test.py |____TestCase | |______init__.py | |____common.py | |____testCaixun.py |____View | |______init__.py | |______init__.pyc | |____BaseTestCase.py | |____BaseView.py | |____Caixun.py
大的目錄我是這麼劃分的:設計