macaca測試web小例子


 

上午剛把macaca的環境在公司的電腦上吧web 端的環境給搭建好,於是乎,看看網上的例子,看看官方的文檔

https://macacajs.github.io/wd.py/ 可以在這個鏈接看到原滋原味針對python的api接口,還有例子,其實看着官方給出來的文檔和例子是那么簡潔通俗易懂,所以無論學什么我感覺學習官網的例子還是很重要的,搭好環境要不要實踐呢,當然我們的答案是肯定的,實踐出真知,動手,拿博客園的登錄,和登錄后在個人中心搜索為例子,算是對macaca的入門吧。

https://passport.cnblogs.com/user/signin

首先我們去查看下登錄界面,

看到這個我們是不是感覺很爽啊,是的 直接id就能搞定了,這對我們初學一個工具的人來說有沒有很簡單,有沒有很easy,那么我們第一個的登錄用例的輸入框的定位是不是就很好定位了,通過id就可以定位到我們的所需要的元素了,忘了還有一個斷言啊,這里的斷言我們就沒有用id,換個定位方式吧,定位這個界面的個人資料,咋一看,classname完全可以定位,soeasy了,那么我們接着來看下登陸后去搜索園友

 

 再次被我們發現了,這個輸入框和搜索是不是還是很好定位的啊,小伙伴們都知道,那么這樣是沒有難度的,沒有難度的,很快我們的用例就能搞定,於是乎,獻上代碼。

from macaca import WebDriver
import unittest
import HTMLTestRunner,time
die_arp={
    'platformName':'Desktop',
    'browserName':'electron'
}
server_url={
    'hostname':'localhost',
    'post':3456
}
class BokeyuanTest(unittest.TestCase):
    @classmethod
    def setUpClass(cls):
        cls.deriver=WebDriver(die_arp,server_url)
        cls.deriver.init()
        cls.deriver.get('https://passport.cnblogs.com/user/signin')
    @classmethod
    def tearDownClass(cls):
        cls.deriver.quit()
    def test_login(cls):
        cls.deriver.element_by_id('input1').send_keys('北漂的雷子')
        cls.deriver.element_by_id('input2').send_keys('li.930423')
        cls.deriver.element_by_id('signin').click()
        cls.assertEqual(cls.deriver.element_by_class_name('set_profile').text,'編輯個人資料')
    def test_serc(cls):
        cls.deriver.element_by_id('txt_user_name').send_keys('逍遙豆')
        cls.deriver.element_by_id('btn_blue').click()
        cls.assertTrue('逍遙豆',cls.deriver.title)
if __name__ == '__main__':
    suite = unittest.TestSuite()
    now = time.strftime('%Y-%m%d', time.localtime(time.time()))
    report_dir = r'%s.html' % now
    suite.addTests(unittest.TestLoader().loadTestsFromTestCase(BokeyuanTest))
    re_open = open(report_dir, 'wb')
    runner = HTMLTestRunner.HTMLTestRunner(stream=re_open, title='demo by macaca', description='測試結果')
    runner.run(suite)

  

  運行運行,

速度是不是很快呢,看看我們的測試報告

完美,測試完畢,測試報告已出,后續實驗正在進行中,Macaca不錯,阿里開源  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM