python-CSV戦闘

まず、戦闘準備

  次のようにプロジェクトファイルのtest.CSVファイルの下で作成された、あなたが直接今のtest.CSVとして保存することが、あなたが直接サフィックスを変更することはできません、test.xlsxファイルを作成する必要があり、ここで作成することはできません、実際の文書が読み取ります。

       

   以下のことを実現するために、CSVファイルの内容を読みます

インポートのCSV 
インポートOS 

:DEF readCsv(行、列)
    の行= [] 
    :Fとしてオープン(os.path.join(os.path.dirname(__ファイル__)、 'のtest.CSV'))と
        リーダ= csv.reader( F)
        次(リーダー、なし)
        リーダーでITERのための:
            rows.append(ITER)
    リターン'' .join(行[行] [COL])
プリント(readCsv(1,2)) 打印出来是:请输入邮箱名

  上記のコード、行が列に変換され、列のリストの最初のコンテンツファイルを読み取る「参加(行[行] [COL])」リスト。

第二に、実装コード

  シーナのログインは、例えば、以下を達成するために、CSVファイルにコードデータ格納されたテストを実装します。

__author__ = "XXX" 

インポートunittestの
webdriverをセレンインポートから
インポートOS 
のTとしてインポート時間
インポートCSV 

DEF readCsv(行、列)
    の行= [] 
    オープン(os.path.join(os.path.dirname(__ FILE__)と、」 ':Fなど))のtest.CSV 
        リーダー= csv.reader(f)は
        、次の(リーダー、なし)
        :リーダーでITERのため
            rows.append(ITER)
    '.join(行[行] [COL])リターン' 

クラスSinaLogin (たunittest.TestCase):
    DEFセットアップ(自己):
        self.driver = webdriver.Chrome()
        self.driver.maximize_window()
        self.driver.get( 'http://mail.sina.com.cn/')
        自己.driver.implicitly_wait(30)

    解体DEF(セルフ):
        t.sleep(3)
        self.driver.quit()

    DEFログイン(セルフ、ユーザ名、パスワード):
        '' '検証:Nのログをテストシーナメールボックス' '' 
        self.driver.find_element_by_id( 'freename')send_keys(ユーザー名)。
        self.driver.find_element_by_id( 'freepassword')send_keys(パスワード)。
        self.driver.find_element_by_link_text(U 'ログイン').click()

    DEF divText(セルフ):
        divText = self.driver .find_element_by_xpath( '/ HTML /本体/ DIV [1] / DIV / DIV [2] /' 
                                                    「DIV / DIV / DIV [4] / DIV [1] / DIV [1] / DIV [1] /スパン[1 ] ')
        freeErrorスパン[1]中の#は、状況は状況に応じて変更された入力
        リターン(divText.text).encode(' UTF -8「)

    test_username_password_null DEF(セルフ):
        「」「検証:テスト用のユーザー名とパスワードが空のエラーメッセージが表示されている」「」
        :メールボックス名を入力してください#空です
        self.login(readCsv(0,0)、readCsvを (0 、1))
        self.assertTrue(self.divText()、readCsv(0,2))

    DEF test_sina_password_null(セルフ):
        '' '検証:空白のパスワードへのテストユーザーが空のエラーメッセージではありません' '' ユーザ名:空、パスワード:管理者、ヒント:メールボックス名を入力します
        self.login(readCsv(1,0)、readCsv(1、1))
        self.assertTrue(self.divText()、readCsvを(1、2))

    DEFのtest_sina_username_format (自己):
        「」「検証:テストユーザーのメールボックス形式不正なエラーメッセージ」「」
        #ユーザ名:[email protected]、パスワード:空の注意:入力してくださいパスワード
        self.login(readCsv(2,0 )、readCsv(2,1))
        self.assertTrue(self.divText()、readCsv(2,2))

もし__name__ == '__main__':
    unittest.main(冗長= 2)

  わずかな効果。

 

閲覧ありがとうございます!

2019年11月30日

おすすめ

転載: www.cnblogs.com/yuntimer/p/11963945.html