自動化測試框架 Robot Framework 使用快速入門(5)

發表于:2011-10-08來源:未知作者:領測軟件測試網采編點擊數: 標簽:
Keyword Action Argument Argument Argument Database Should Contain [Arguments] ${username} ${password} ${status} ${database} = Get File ${DATABASE FILE} Should Contain ${database} ${username}/t${passwo

Keyword

Action

Argument

Argument

Argument

Database Should Contain

[Arguments]

${username}

${password}

${status}

 

${database} =

Get File

${DATABASE FILE}

 
 

Should Contain

${database}

${username}/t${password}/t${status}

 

  組織測試用例

  測試套件

  在Robot Framework中測試用例的集合叫做測試套件。每個包含測試用例的輸入文件組成一個測試套件。當運行本demo時,可以在控制臺輸出上看見測試套件Quickstart 。這個名字來自于文件名并且在報告和日志都可見。

  可以通過將測試用例文件放置在目錄中并將這些目錄放在其他目錄中來組織測試用例的層次。所有這些目錄自動創建以目錄名命名的高層次測試套件。因為測試套件知識文件和目錄,它們很容易放置到任何版本管理系統中。

  你可以通過在本指南的目錄下運行如下命令來測試運行一個目錄作為一個測試套件:

  pybot .

  啟動和卸載

  如果你希望讓一系列動作在每個測試執行之前或之后發生,使用Test Setup 和 Test Teardown 設置如下:

 

Setting

Value

Test Setup

Clear Login Database

Test Teardown

 

  同樣你也可以使用Suite Setup 和 Suite Teardown 設置來指定在整個測試套件執行之前和之后執行的動作。

  使用標簽

  Robot Framework 允許為測試用例設置標簽以便給他們自由的元數據。allows setting tags for test cases to give them free metadata. 標簽可以使用如下表中Default Tags 和 Force Tags settings為一個文件中的所有測試用例設置。也可以像前面User status is stored in database測試中那樣為單獨的測試用例設置標簽。

 

Setting

Value

Value

Force Tags

quickstart

 

Default Tags

example

smoke

  當你在一個測試執行后查看報告時,可以發現測試與標簽相關聯并且按照標簽同級生成。標簽還可用于很多其他目的,其中一個很重要的就是用于選擇想要執行什么測試。你可以嘗試下面的命令:

  pybot --include smoke quickstart.html

  pybot --exclude database quickstart.html

  創建測試庫

  Robot Framework 為創建測試庫提供了一個簡單的API,包括Python 和 Java。 user guide包括有具有例子的詳細說明。

  下面是本文中LoginLibrary 的源碼??梢钥吹疥P鍵詞Create User 是如何映射到方法create_user 的實際實現。

  import os

  import sys

  class LoginLibrary:

  def __init__(self):

  self._sut_path = os.path.join(os.path.dirname(__file__),

  '..', 'sut', 'login.py')

  self._status = ''

  def create_user(self, username, password):

  self._run_command('create', username, password)

  def change_password(self, username, old_pwd, new_pwd):

  self._run_command('change-password', username, old_pwd, new_pwd)

  def attempt_to_login_with_credentials(self, username, password):

  self._run_command('login', username, password)

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97