2015-08-27 20 views
8

In un quadro di robot, ho una suite di test in questo modo:Come posso importare un file con parole chiave comuni nel framework del robot?

test-suite/ 
    ├── Common.robot 
    ├── TestCaseA.robot 
    └── TestCaseB.robot 

Il file Common.robot definisce alcune parole chiave che saranno utilizzate sia da TestCaseA.robot e TestCaseB.robot. In altre lingue Common.robot sarebbero chiamati una biblioteca, ma cercando di importare in questo modo

*** Settings *** 
Library   Commons 

o come quello

*** Settings *** 
Library   Commons.robot 

genera un errore.

[ ERROR ] Error in file '[...]/TestCaseA.robot': Importing test library 'Commons' failed: ImportError: No module named Commons 

La parola chiave Library sembra funzionare solo per le librerie di test a basso livello. Sono sicuro che ci deve essere un altro modo. Come possono essere incluse le librerie definite dall'utente nel framework del robot?

risposta

11

Se Common.robot è un file di testo semplice o un file di tabulazione con le parole chiave di framework robot, deve essere importato nella tabella Settings. Nel framework robot, i file con parole chiave condivise sono chiamati resource files.

*** Settings *** 
Resource  Common.robot 

Tuttavia, se si tratta di un file di pitone con parole chiave condivise, dovrebbe essere di risorse come una libreria come

*** Settings *** 
Library  Common.py 

Si noti che in entrambi i casi il nome del file completo deve essere specificato.

+0

Per aggiungere a questo, è possibile chiamare un file di risorse da un file di risorse se si desidera avere parole chiave a strati (come "condiviso tra suite" e "all'interno di questa suite") o se si desidera unire due set di parole chiave (come "parole chiave della pagina 1" e "parole chiave della pagina 2" per un test che copre due pagine). –