• 测试facebook的代码


    # -*- coding: utf-8 -*-
    
    # Copyright 2012 splinter authors. All rights reserved.
    # Use of this source code is governed by a BSD-style
    # license that can be found in the LICENSE file.
    
    """
    This snippet show how to "test" a Facebook feature: the creation of an event.
    
    It creates an event by going to http://www.facebook.com, login and navigate to "Create an event" page.
    """
    
    from __future__ import with_statement
    
    import os
    import unittest
    import time
    from splinter import Browser
    
    class FacebookEventsTestCase(unittest.TestCase):
    
        @classmethod
        def setUpClass(cls):
            cls.browser = Browser('firefox')
    
        @classmethod
        def tearDownClass(cls):
            cls.browser.quit()
    
        def do_login_if_need(self, username, password):
            if self.browser.is_element_present_by_css('div.menu_login_container'):
                self.browser.fill('email', username)
                self.browser.fill('pass', password)
                self.browser.find_by_css('div.menu_login_container input[type="submit"]').first.click()
                assert self.browser.is_element_present_by_css('li#navAccount')
    
        def test_create_event(self):
            "Should be able to create an event"
            # Open home and login
            self.browser.visit("http://www.facebook.com")
            self.do_login_if_need(username='user', password='pass')
    
            # Go to events page
            self.browser.find_by_css('li#navItem_events a').first.click()
    
            # Click on "Create an event button"
            self.browser.find_by_css('div.uiHeaderTop a.uiButton').first.click()
            time.sleep(1)
    
            # Uploading the picture
            picture_path = os.path.join(os.path.abspath(os.path.dirname(__file__)), 'img', 'turtles.jpg')
            self.browser.find_by_css('div.eventEditUpload a.uiButton').first.click()
    
            if not self.browser.is_element_present_by_css('iframe#upload_pic_frame', wait_time=10):
                self.fail("The upload pic iframe didn't appear :(")
    
            with self.browser.get_iframe('upload_pic_frame') as frame:
                frame.attach_file('pic', picture_path)
                time.sleep(10)
    
            # Filling the form
            self.browser.fill('event_startIntlDisplay', '5/21/2011')
            self.browser.select('start_time_min', '480')
            self.browser.fill('name', 'Splinter sprint')
            self.browser.fill('location', 'Rio de Janeiro, Brazil')
            self.browser.fill('desc', 'For more info, check out the #cobratem channel on freenode!')
    
            self.browser.find_by_css('label.uiButton input[type="submit"]').first.click()
            time.sleep(1)
    
            # Checking if the event was created and we were redirect to its page
            title = self.browser.find_by_css('h1 span').first.text
            assert title == 'Splinter sprint', title
  • 相关阅读:
    需要学习的技术
    Building wheel for uwsgi (setup.py) ... error 解决问题
    version `ZLIB_1.2.3.4‘ not found 解决方法
    module 'tensorflow' has no attribute 'space_to_depth'(已解决)
    python语法—命名元祖、偏函数
    python—set集合比较(交集、并集,差集)
    websocket接口测试
    linux根目录扩容方法
    django—问题—中文编码格式报错 、分页warning
    python—使用sorted对字典进行排序
  • 原文地址:https://www.cnblogs.com/hzhida/p/2634542.html
Copyright © 2020-2023  润新知