まず、戦闘準備
次のようにプロジェクトファイルの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日