கட்டமைப்பு
அமைப்பு வகை அடிப்படையில் (எ.கா. raw protocol bindings, தனித்த தொகுப்பாக WebdriverIO அல்லது WDIO டெஸ்ட்ரன்னர் பயன்படுத்துதல்) சூழலை கட்டுப்படுத்த பல்வேறு விருப்பங்கள் உள்ளன.
WebDriver விருப்பங்கள்
webdriver
protocol தொகுப்பைப் பயன்படுத்தும்போது பின்வரும் விருப்பங்கள் வரையறுக்கப்படுகின்றன:
protocol
டிரைவர் சேவையகத்துடன் தொடர்பு கொள்ள பயன்படுத்தப்படும் நெறிமுறை.
வகை: String
இயல்புநிலை: http
hostname
உங்கள் டிரைவர் சேவையகத்தின் ஹோஸ்ட்.
வகை: String
இயல்புநிலை: 0.0.0.0
port
உங்கள் டிரைவர் சேவையகம் இருக்கும் போர்ட்.
வகை: Number
இயல்புநிலை: undefined
path
டிரைவர் சேவையக எண்ட்பாயிண்ட் பாதை.
வகை: String
இயல்புநிலை: /
queryParams
டிரைவர் சேவையகத்திற்கு அனுப்பப்படும் வினவல் அளவுருக்கள்.
வகை: Object
இயல்புநிலை: undefined
user
உங்கள் கிளவுட் சேவை பயனர்பெயர் (Sauce Labs, Browserstack, TestingBot அல்லது LambdaTest கணக்குகளுக்கு மட்டுமே செயல்படும்). அமைக்கப்பட்டால், WebdriverIO தானாகவே இணைப்பு விருப்பங்களை அமைக்கும். நீங்கள் கிளவுட் வழங்குநரைப் பயன்படுத்தவில்லை எனில், வேறு எந்த WebDriver பின்புலத்தையும் அங்கீகரிக்க இதைப் பயன்படுத்தலாம்.
வகை: String
இயல்புநிலை: undefined
key
உங்கள் கிளவுட் சேவை அணுகல் விசை அல்லது ரகசிய விசை (Sauce Labs, Browserstack, TestingBot அல்லது LambdaTest கணக்குகளுக்கு மட்டுமே செயல்படும்). அமைக்கப்பட்டால், WebdriverIO தானாகவே இணைப்பு விருப்பங்களை அமைக்கும். நீங்கள் கிளவுட் வழங்குநரைப் பயன்படுத்தவில்லை எனில், வேறு எந்த WebDriver பின்புலத்தையும் அங்கீகரிக்க இதைப் பயன்படுத்தலாம்.
வகை: String
இயல்புநிலை: undefined
capabilities
உங்கள் WebDriver அமர்வில் இயக்க விரும்பும் திறன்களை வரையறுக்கிறது. மேலும் விவரங்களுக்கு WebDriver Protocol ஐப் பார்க்கவும். WebDriver நெறிமுறையை ஆதரிக்காத பழைய டிரைவரை இயக்கினால், அமர்வை வெற்றிகரமாக இயக்க JSONWireProtocol capabilities பயன்படுத்த வேண்டியிருக்கும்.
WebDriver அடிப்படையிலான திறன்களுக்கு அடுத்ததாக, தொலைநிலை உலாவி அல்லது சாதனத்தில் ஆழமான கட்டமைப்பை அனுமதிக்கும் உலாவி மற்றும் விற்பனையாளர் குறிப்பிட்ட விருப்பங்களை நீங்கள் பயன்படுத்தலாம். இவை சம்பந்தப்பட்ட விற்பனையாளர் ஆவணங்களில் ஆவணப்படுத்தப்பட்டுள்ளன, எ.கா.:
goog:chromeOptions
: Google Chrome க்காகmoz:firefoxOptions
: Mozilla Firefox க்காகms:edgeOptions
: Microsoft Edge க்காகsauce:options
: Sauce Labs க்காகbstack:options
: BrowserStack க்காகselenoid:options
: Selenoid க்காக
கூடுதலாக, Sauce Labs Automated Test Configurator என்ற பயனுள்ள கருவி, உங்கள் விரும்பிய திறன்களை கிளிக் செய்து இந்த பொருளை உருவாக்க உதவுகிறது.
வகை: Object
இயல்புநிலை: null
உதாரணம்:
{
browserName: 'chrome', // options: `chrome`, `edge`, `firefox`, `safari`
browserVersion: '27.0', // browser version
platformName: 'Windows 10' // OS platform
}
நீங்கள் மொபைல் சாதனங்களில் வெப் அல்லது நேட்டிவ் சோதனைகளை இயக்கினால், capabilities
WebDriver நெறிமுறையிலிருந்து வேறுபடுகிறது. மேலும் விவரங்களுக்கு Appium Docs ஐப் பார்க்கவும்.
logLevel
பதிவு வெளியீட்டின் அளவு.
வகை: String
இயல்புநிலை: info
விருப்பங்கள்: trace
| debug
| info
| warn
| error
| silent
outputDir
அனைத்து டெஸ்ட்ரன்னர் பதிவு கோப்புகளையும் (அறிக்கை பதிவுகள் மற்றும் wdio
பதிவுகள் உட்பட) சேமிக்க கோப்பகம். அமைக்கப்படவில்லை என்றால், அனைத்து பதிவுகளும் stdout
க்கு அனுப்பப்படும். பெரும்பாலான அறிக்கையாளர்கள் stdout
க்கு அறிக்கையிட உருவாக்கப்பட்டுள்ளதால், குறிப்பிட்ட அறிக்கையாளர்களுக்கு மட்டுமே இந்த விருப்பத்தைப் பயன்படுத்துவது சிறந்தது, அதாவது அறிக்கையை ஒரு கோப்புக்குள் அனுப்புவது (உதாரணமாக junit
அறிக்கையாளர்).
தனித்த நிலையில் இயங்கும்போது, WebdriverIO உருவாக்கிய ஒரே பதிவு wdio
பதிவு மட்டுமே.
வகை: String
இயல்புநிலை: null
connectionRetryTimeout
டிரைவர் அல்லது கிரிட்டுக்கு எந்த WebDriver கோரிக்கையின் காலவரம்பு.
வகை: Number
இயல்புநிலை: 120000
connectionRetryCount
செலீனியம் சேவையகத்திற்கான கோரிக்கை மறுமுயற்சிகளின் அதிகபட்ச எண்ணிக்கை.
வகை: Number
இயல்புநிலை: 3
agent
கோரிக்கைகளை செய்ய வழக்கமான http
/https
/http2
agent ஐப் பயன்படுத்த அனுமதிக்கிறது.
வகை: Object
இயல்புநிலை:
{
http: new http.Agent({ keepAlive: true }),
https: new https.Agent({ keepAlive: true })
}
headers
ஒவ்வொரு WebDriver கோரிக்கைக்கும் அனுப்ப விரும்பிய தனிப்பயன் headers
ஐக் குறிப்பிடவும். உங்கள் செலீனியம் கிரிட் அடிப்படை அங்கீகாரத்தை (Basic Authentication) தேவைப்படுத்தினால், உங்கள் WebDriver கோரிக்கைகளை அங்கீகரிக்க இந்த விருப்பத்தின் மூலம் Authorization
header ஐ அனுப்ப பரிந்துரைக்கிறோம், எ.கா.:
import { Buffer } from 'buffer';
// Read the username and password from environment variables
const username = process.env.SELENIUM_GRID_USERNAME;
const password = process.env.SELENIUM_GRID_PASSWORD;
// Combine the username and password with a colon separator
const credentials = `${username}:${password}`;
// Encode the credentials using Base64
const encodedCredentials = Buffer.from(credentials).toString('base64');
export const config: WebdriverIO.Config = {
// ...
headers: {
Authorization: `Basic ${encodedCredentials}`
}
// ...
}
வகை: Object
இயல்புநிலை: {}
transformRequest
WebDriver கோரிக்கை செய்யப்படுவதற்கு முன் HTTP request options ஐ இடைமறிக்கும் செயல்பாடு
வகை: (RequestOptions) => RequestOptions
இயல்புநிலை: இல்லை
transformResponse
WebDriver பதில் வந்த பிறகு HTTP பதில் பொருள்களை இடைமறிக்கும் செயல்பாடு. முதல் அளவுருவாக அசல் பதில் பொருள் மற்றும் இரண்டாவதாக தொடர்புடைய RequestOptions
செயல்பாட்டிற்கு அனுப்பப்படுகிறது.
வகை: (Response, RequestOptions) => Response
இயல்புநிலை: இல்லை
strictSSL
SSL சான்றிதழ் செல்லுபடியாகத் தேவையில்லை என்பதை குறிக்கிறது.
இதை STRICT_SSL
அல்லது strict_ssl
என்ற சூழல் மாறிகள் மூலம் அமைக்கலாம்.
வகை: Boolean
இயல்புநிலை: true
enableDirectConnect
Appium நேரடி இணைப்பு அம்சத்தை இயக்க வேண்டுமா. கொடி இயக்கப்பட்டிருந்தாலும், பதிலில் முறையான விசைகள் இல்லாவிட்டால் எதுவும் செய்யாது.
வகை: Boolean
இயல்புநிலை: true
cacheDir
கேச் கோப்பகத்தின் ரூட் பாதை. அமர்வைத் தொடங்க முயற்சிக்கும்போது பதிவிறக்கம் செய்யப்படும் அனைத்து டிரைவர்களையும் சேமிக்க இந்த கோப்பகம் பயன்படுத்தப்படுகிறது.
வகை: String
இயல்புநிலை: process.env.WEBDRIVER_CACHE_DIR || os.tmpdir()
WebdriverIO
பின்வரும் விருப்பங்களை (மேலே பட்டியலிடப்பட்டவையும் சேர்த்து) தனித்து இயங்கும் WebdriverIO உடன் பயன்படுத்தலாம்:
automationProtocol
உங்கள் உலாவி ஆட்டோமேஷனுக்காக நீங்கள் பயன்படுத்த விரும்பும் நெறிமுறையை வரையறுக்கவும். தற்போது webdriver
மட்டுமே ஆதரிக்கப்படுகிறது, ஏனெனில் இது WebdriverIO பயன்படுத்தும் முக்கிய உலாவி ஆட்டோமேஷன் தொழில்நுட்பமாகும்.
வேறு ஆட்டோமேஷன் தொழில்நுட்பத்தைப் பயன்படுத்தி உலாவியை ஆட்டோமேட் செய்ய விரும்பினால், பின்வரும் இடைமுகத்தைக் கடைப்பிடிக்கும் தொகுதியாக தீர்மானிக்கப்படும் பாதைக்கு இந்த பண்பை அமைக்கவும்:
import type { Capabilities } from '@wdio/types';
import type { Client, AttachOptions } from 'webdriver';
export default class YourAutomationLibrary {
/**
* Start a automation session and return a WebdriverIO [monad](https://github.com/webdriverio/webdriverio/blob/940cd30939864bdbdacb2e94ee6e8ada9b1cc74c/packages/wdio-utils/src/monad.ts)
* with respective automation commands. See the [webdriver](https://www.npmjs.com/package/webdriver) package
* as a reference implementation
*
* @param {Capabilities.RemoteConfig} options WebdriverIO options
* @param {Function} hook that allows to modify the client before it gets released from the function
* @param {PropertyDescriptorMap} userPrototype allows user to add custom protocol commands
* @param {Function} customCommandWrapper allows to modify the command execution
* @returns a WebdriverIO compatible client instance
*/
static newSession(
options: Capabilities.RemoteConfig,
modifier?: (...args: any[]) => any,
userPrototype?: PropertyDescriptorMap,
customCommandWrapper?: (...args: any[]) => any
): Promise<Client>;
/**
* allows user to attach to existing sessions
* @optional
*/
static attachToSession(
options?: AttachOptions,
modifier?: (...args: any[]) => any, userPrototype?: {},
commandWrapper?: (...args: any[]) => any
): Client;
/**
* Changes The instance session id and browser capabilities for the new session
* directly into the passed in browser object
*
* @optional
* @param {object} instance the object we get from a new browser session.
* @returns {string} the new session id of the browser
*/
static reloadSession(
instance: Client,
newCapabilities?: WebdriverIO.Capabilitie
): Promise<string>;
}
வகை: String
இயல்புநிலை: webdriver
baseUrl
அடிப்படை URL ஐ அமைப்பதன் மூலம் url
கட்டளை அழைப்புகளைக் குறைக்கவும்.
- உங்கள்
url
அளவுரு/
உடன் தொடங்கினால்,baseUrl
முன்னொட்டாக சேர்க்கப்படும் (baseUrl
பாதை இருந்தால் அதைத் தவிர). - உங்கள்
url
அளவுரு திட்டம் அல்லது/
இல்லாமல் தொடங்கினால் (எ.கா.some/path
), முழுbaseUrl
நேரடியாக முன்னொட்டாக சேர்க்கப்படும்.
வகை: String
இயல்புநிலை: null
waitforTimeout
அனைத்து waitFor*
கட்டளைகளுக்கான இயல்புநிலை நேரம் முடிவு. (விருப்ப பெயரில் lowercase f
ஐக் கவனிக்கவும்.) இந்த நேரம் முடிவு waitFor*
உடன் தொடங்கும் கட்டளைகளை மட்டுமே பாதிக்கும் மற்றும் அவற்றின் இயல்புநிலை காத்திருப்பு நேரம்.
ஒரு சோதனைக்கான நேரம் முடிவை அதிகரிக்க, கட்டமைப்பு ஆவணங்களைப் பார்க்கவும்.
வகை: Number
இயல்புநிலை: 5000
waitforInterval
எதிர்பார்க்கப்படும் நிலை (எ.கா., காட்சித்தன்மை) மாற்றப்பட்டுள்ளதா என்பதைச் சரிபார்க்க அனைத்து waitFor*
கட்டளைகளுக்கும் இயல்புநிலை இடைவெளி.
வகை: Number
இயல்புநிலை: 100
region
Sauce Labs இல் இயங்கும்போது, வெவ்வேறு தரவு மையங்களுக்கு இடையே சோதனைகளை இயக்கத் தேர்வு செய்யலாம்: US அல்லது EU.
உங்கள் பிராந்தியத்தை EU க்கு மாற்ற, உங்கள் கட்டமைப்பில் region: 'eu'
சேர்க்கவும்.
குறிப்பு: உங்கள் Sauce Labs கணக்குடன் இணைக்கப்பட்ட user
மற்றும் key
விருப்பங்களை வழங்கினால் மட்டுமே இது செயல்படும்.
வகை: String
இயல்புநிலை: us
(vm மற்றும் em/simulators க்கு மட்டுமே)
Testrunner விருப்பங்கள்
WDIO டெஸ்ட்ரன்னருடன் WebdriverIO ஐ இயக்குவதற்கு பின்வரும் விருப்பங்கள் (மேலே பட்டியலிடப்பட்டவையும் சேர்த்து) வரையறுக்கப்பட்டுள்ளன:
specs
சோதனை இயக்கத்திற்கான specs ஐ வரையறுக்கவும். ஒரே நேரத்தில் பல கோப்புகளைப் பொருத்த glob pattern ஐக் குறிப்பிடலாம் அல்லது ஒற்றை worker செயல்முறையில் இயக்க glob அல்லது பாதைகளின் தொகுப்பை array இல் wrap செய்யலாம். அனைத்து பாதைகளும் config கோப்பு பாதையிலிருந்து தொடர்புடையதாகக் காணப்படுகின்றன.
வகை: (String | String[])[]
இயல்புநிலை: []
exclude
சோதனை இயக்கத்திலிருந்து specs ஐ விலக்கவும். அனைத்து பாதைகளும் config கோப்பு பாதையிலிருந்து தொடர்புடையதாகக் காணப்படுகின்றன.
வகை: String[]
இயல்புநிலை: []
suites
பல்வேறு suites ஐ விவரிக்கும் ஒரு பொருள், இதை wdio
CLI இல் --suite
விருப்பத்துடன் குறிப்பிடலாம்.
வகை: Object
இயல்புநிலை: {}
capabilities
மேலே விவரிக்கப்பட்டுள்ள capabilities
பிரிவு போலவே, ஆனால் multiremote
பொருளைக் குறிப்பிடும் விருப்பம் அல்லது இணை இயக்கத்திற்கு அரேயில் பல WebDriver அமர்வுகள்.
மேலே வரையறுக்கப்பட்டுள்ள அதே விற்பனையாளர் மற்றும் உலாவி குறிப்பிட்ட திறன்களைப் பயன்படுத்தலாம்.
வகை: Object
|Object[]
இயல்புநிலை: [{ 'wdio:maxInstances': 5, browserName: 'firefox' }]
maxInstances
மொத்த இணை worker களின் அதிகபட்ச எண்ணிக்கை.
குறிப்பு: சோதனைகள் Sauce Labs போன்ற வெளிப்புற விற்பனையாளர்களின் எந்திரங்களில் செய்யப்படும்போது இது 100
போன்ற உயர்ந்த எண்ணாக இருக்கலாம். அங்கு, சோதனைகள் ஒரு எந்திரத்தில் அல்ல, பல VMs இல் சோதிக்கப்படுகின்றன. சோதனைகள் உள்ளூர் மேம்பாட்டு எந்திரத்தில் இயக்கப்பட வேண்டுமெனில், 3
, 4
, அல்லது 5
போன்ற நியாயமான எண்ணைப் பயன்படுத்தவும். அடிப்படையில், இது ஒரே நேரத்தில் தொடங்கப்பட்டு உங்கள் சோதனைகளை இயக்கும் உலாவிகளின் எண்ணிக்கை, எனவே உங்கள் எந்திரத்தில் எவ்வளவு RAM உள்ளது மற்றும் வேறு எத்தனை பயன்பாடுகள் இயங்குகின்றன என்பதைப் பொறுத்தது.
உங்கள் திறன் பொருள்களில் wdio:maxInstances
திறனைப் பயன்படுத்தி maxInstances
ஐயும் பயன்படுத்தலாம். இது அந்த குறிப்பிட்ட திறனுக்கான இணை அமர்வுகளின் அளவை வரம்பிடும்.
வகை: Number
இயல்புநிலை: 100
maxInstancesPerCapability
ஒரு திறனுக்கான மொத்த இணை worker களின் அதிகபட்ச எண்ணிக்கை.
வகை: Number
இயல்புநிலை: 100
injectGlobals
WebdriverIO இன் globals (எ.கா. browser
, $
மற்றும் $$
) ஐ உலகளாவிய சூழலில் செருகுகிறது.
false
என அமைத்தால், @wdio/globals
இலிருந்து import செய்ய வேண்டும், எ.கா.:
import { browser, $, $$, expect } from '@wdio/globals'
குறிப்பு: WebdriverIO சோதனை கட்டமைப்பு குறிப்பிட்ட globals இன் செருகலை கையாளவில்லை.
வகை: Boolean
இயல்புநிலை: true
bail
குறிப்பிட்ட எண்ணிக்கையிலான சோதனை தோல்விகளுக்குப் பிறகு உங்கள் சோதனை ஓட்டத்தை நிறுத்த விரும்பினால், bail
ஐப் பயன்படுத்தவும்.
(இது இயல்பாக 0
ஆகும், இது எவ்வாறாயினும் அனைத்து சோதனைகளையும் இயக்குகிறது.) குறிப்பு: இந்த சூழலில் ஒரு சோதனை என்பது ஒற்றை spec கோப்பில் உள்ள அனைத்து சோதனைகளும் (Mocha அல்லது Jasmine பயன்படுத்தும்போது) அல்லது அம்ச கோப்பில் உள்ள அனைத்து படிகளும் (Cucumber பயன்படுத்தும்போது). ஒற்றை சோதனை கோப்பின் சோதனைகளில் bail செயல்பாட்டைக் கட்டுப்படுத்த விரும்பினால், கிடைக்கக்கூடிய கட்டமைப்பு விருப்பங்களைப் பார்க்கவும்.
வகை: Number
இயல்புநிலை: 0
(bail இல்லை; அனைத்து சோதனைகளையும் இயக்கு)
specFileRetries
முழுமையாக தோல்வியடையும்போது ஒரு முழு specfile ஐ மீண்டும் முயற்சிக்கும் முறைகளின் எண்ணிக்கை.
வகை: Number
இயல்புநிலை: 0
specFileRetriesDelay
Spec file மறுமுயற்சி முயற்சிகளுக்கு இடையேயான தாமதம் (வினாடிகளில்)
வகை: Number
இயல்புநிலை: 0
specFileRetriesDeferred
மறுமுயற்சி செய்யப்பட்ட spec கோப்புகள் உடனடியாக மறுமுயற்சி செய்யப்பட வேண்டுமா அல்லது வரிசையின் இறுதிக்கு ஒத்திவைக்கப்பட வேண்டுமா.
வகை: Boolean
இயல்புநிலை: true
groupLogsByTestSpec
பதிவு வெளியீடு காட்சியைத் தேர்வு செய்யவும்.
false
என அமைக்கப்பட்டால், வெவ்வேறு சோதனை கோப்புகளின் பதிவுகள் நிகழ்நேரத்தில் அச்சிடப்படும். இணையாக இயங்கும் போது வெவ்வேறு கோப்புகளின் பதிவு வெளியீடுகள் கலக்கலாம் என்பதை கவனிக்கவும்.
true
என அமைக்கப்பட்டால், பதிவு வெளியீடுகள் சோதனை Spec படி குழுப்படுத்தப்பட்டு சோதனை Spec முடிந்த பிறகே அச்சிடப்படும்.
இயல்பாக, இது false
என அமைக்கப்பட்டுள்ளது, எனவே பதிவுகள் நிகழ்நேரத்தில் அச்சிடப்படுகின்றன.
வகை: Boolean
இயல்புநிலை: false
services
நீங்கள் கவனிக்க விரும்பாத ஒரு குறிப்பிட்ட வேலையை சேவைகள் ஏற்றுக்கொள்கின்றன. அவை உங்கள் சோதனை அமைப்பை கிட்டத்தட்ட எந்த முயற்சியும் இல்லாமல் மேம்படுத்துகின்றன.
வகை: String[]|Object[]
இயல்புநிலை: []
framework
WDIO டெஸ்ட்ரன்னரால் பயன்படுத்தப்படும் சோதனை கட்டமைப்பை வரையறுக்கிறது.
வகை: String
இயல்புநிலை: mocha
விருப்பங்கள்: mocha
| jasmine
mochaOpts, jasmineOpts மற்றும் cucumberOpts
குறிப்பிட்ட கட்டமைப்பு தொடர்பான விருப்பங்கள். எந்த விருப்பங்கள் கிடைக்கும் என்பதைத் தெரிந்துகொள்ள கட்டமைப்பு adapter ஆவணங்களைப் பார்க்கவும். இதைப் பற்றி மேலும் கட்டமைப்புகள் இல் படிக்கவும்.
வகை: Object
இயல்புநிலை: { timeout: 10000 }
cucumberFeaturesWithLineNumbers
வரி எண்களுடன் கூடிய cucumber அம்சங்களின் பட்டியல் (cucumber framework பயன்படுத்தும்போது).
வகை: String[]
இயல்புநிலை: []
reporters
பயன்படுத்த அறிக்கையாளர்களின் பட்டியல். ஒரு அறிக்கையாளர் ஒரு சரம் அல்லது
['reporterName', { /* reporter options */}]
வடிவில் array ஆக இருக்கலாம், இதில் முதல் உறுப்பு அறிக்கையாளர் பெயருடன் கூடிய சரம் மற்றும் இரண்டாவது உறுப்பு அறிக்கையாளர் விருப்பங்களுடன் ஒரு பொருள்.
வகை: String[]|Object[]
இயல்புநிலை: []
உதாரணம்:
reporters: [
'dot',
'spec'
['junit', {
outputDir: `${__dirname}/reports`,
otherOption: 'foobar'
}]
]
reporterSyncInterval
அறிக்கையாளர்கள் தங்கள் பதிவுகளை ஒத்திசைக்கப்பட்டுள்ளதா என்பதை அறிக்கையாளர்கள் சரிபார்க்க வேண்டிய இடைவெளியை தீர்மானிக்கிறது (எ.கா. பதிவுகள் 3வது தரப்பு விற்பனையாளருக்கு ஸ்ட்ரீம் செய்யப்பட்டால்).
வகை: Number
இயல்புநிலை: 100
(ms)
reporterSyncTimeout
அறிக்கையாளர்கள் தங்கள் அனைத்து பதிவுகளையும் பதிவேற்றுவதை முடிக்கும் வரை டெஸ்ட்ரன்னரால் பிழை ஏற்படும் வரை அதிகபட்ச நேரத்தை தீர்மானிக்கிறது.
வகை: Number
இயல்புநிலை: 5000
(ms)
execArgv
child processes தொடங்கும்போது குறிப்பிட வேண்டிய Node arguments.
வகை: String[]
இயல்புநிலை: null
filesToWatch
டெஸ்ட்ரன்னர் --watch
கொடியுடன் இயக்கும்போது கூடுதலாக கவனிக்க வேண்டிய கோப்புகளின் glob ஆதரிக்கும் சரம் வடிவங்களின் பட்டியல், எ.கா. பயன்பாட்டு கோப்புகள். இயல்பாக டெஸ்ட்ரன்னர் ஏற்கனவே அனைத்து spec கோப்புகளையும் கவனிக்கிறது.
வகை: String[]
இயல்புநிலை: []
updateSnapshots
உங்கள் snapshots ஐ புதுப்பிக்க விரும்பினால் true என அமைக்கவும். இதை CLI அளவுருவாக பயன்படுத்துவது சிறந்தது, எ.கா. wdio run wdio.conf.js --s
.
வகை: 'new' | 'all' | 'none'
இயல்புநிலை: none
(வழங்கப்படவில்லை என்றால் மற்றும் சோதனைகள் CI இல் இயங்கினால்), new
(வழங்கப்படவில்லை என்றால்), அல்லது வழங்கப்பட்ட மதிப்பு.
resolveSnapshotPath
இயல்புநிலை snapshot பாதையை மேலெழுதுகிறது. உதாரணமாக, சோதனை கோப்புகளுக்கு அருகில் snapshots சேமிக்க.
export const config: WebdriverIO.Config = {
resolveSnapshotPath: (testPath, snapExtension) => testPath + snapExtension,
}
வகை: (testPath: string, snapExtension: string) => string
இயல்புநிலை: சோதனை கோப்புக்கு அருகில் __snapshots__
கோப்பகத்தில் snapshot கோப்புகளை சேமிக்கிறது
tsConfigPath
WDIO TypeScript கோப்புகளை compile செய்ய tsx
ஐப் பயன்படுத்துகிறது. உங்கள் TSConfig தற்போதைய பணி கோப்பகத்திலிருந்து தானாகவே கண்டறியப்படுகிறது, ஆனால் இங்கே தனிப்பயன் பாதையைக் குறிப்பிடலாம் அல்லது TSX_TSCONFIG_PATH சூழல் மாறியை அமைக்கலாம்.
tsx
ஆவணங்களைப் பார்க்கவும்: https://tsx.is/dev-api/node-cli#custom-tsconfig-json-path
வகை: String
இயல்புநிலை: null
Hooks
WDIO டெஸ்ட்ரன்னர் சோதனை வாழ்க்கைச் சுழற்சியின் குறிப்பிட்ட நேரங்களில் நிகழ்ச்சிகளைத் தூண்ட hooks அமைக்க அனுமதிக்கிறது. இது தனிப்பயன் செயல்களை அனுமதிக்கிறது (எ.கா. சோதனை தோல்வியுற்றால் ஸ்கிரீன்ஷாட் எடுக்கவும்).
ஒவ்வொரு hook க்கும் அளவுருவாக வாழ்க்கைச் சுழற்சி பற்றிய குறிப்பிட்ட தகவல்கள் (எ.கா. சோதனை suite அல்லது சோதனை பற்றிய தகவல்) உள்ளது. அனைத்து hook பண்புகளைப் பற்றி எங்கள் எடுத்துக்காட்டு கட்டமைப்பில் மேலும் படிக்கவும்.
குறிப்பு: சில hooks (onPrepare
, onWorkerStart
, onWorkerEnd
மற்றும் onComplete
) வேறு செயல்முறையில் செயல்படுத்தப்படுகிறது, எனவே worker செயல்முறையில் வாழும் மற்ற hooks உடன் எந்த உலகளாவிய தரவையும் பகிர முடியாது.
onPrepare
அனைத்து worker களும் தொடங்குவதற்கு முன்பு ஒரு முறை செயல்படுத்தப்படுகிறது.
அளவுருக்கள்:
config
(object
): WebdriverIO கட்டமைப்பு பொருள்param
(object[]
): திறன்கள் விவரங்களின் பட்டியல்
onWorkerStart
worker செயல்முறை தொடங்கப்படுவதற்கு முன் செயல்படுத்தப்படுகிறது, மேலும் அந்த worker க்கான குறிப்பிட்ட சேவையை துவக்கவும் runtime சூழல்களை async முறையில் மாற்றியமைக்கவும் பயன்படுத்தலாம்.
அளவுருக்கள்:
cid
(string
): திறன் id (எ.கா 0-0)caps
(object
): worker இல் தொடங்கப்படும் அமர்வுக்கான திறன்களைக் கொண்டுள்ளதுspecs
(string[]
): worker செயல்முறையில் இயக்கப்படும் spec கள்args
(object
): worker துவக்கப்பட்டவுடன் முக்கிய கட்டமைப்புடன் இணைக்கப்படும் பொருள்execArgv
(string[]
): worker செயல்முறைக்கு அனுப்பப்பட்ட சர arguments பட்டியல்
onWorkerEnd
worker செயல்முறை வெளியேறிய பிறகு செயல்படுத்தப்படுகிறது.
அளவுருக்கள்:
cid
(string
): திறன் id (எ.கா 0-0)exitCode
(number
): 0 - வெற்றி, 1 - தோல்விspecs
(string[]
): worker செயல்முறையில் இயக்கப்படும் spec கள்retries
(number
): "Add retries on a per-specfile basis" இல் வரையறுக்கப்பட்டபடி பயன்படுத்தப்பட்ட spec-level மறுமுயற்சிகளின் எண்ணிக்கை
beforeSession
webdriver அமர்வு மற்றும் சோதனை கட்டமைப்பை துவக்குவதற்கு முன்பாக செயல்படுத்தப்படுகிறது. இது திறன் அல்லது spec ஐப் பொறுத்து கட்டமைப்புகளை கையாள அனுமதிக்கிறது.
அளவுருக்கள்:
config
(object
): WebdriverIO கட்டமைப்பு பொருள்caps
(object
): worker இல் தொடங்கப்படும் அமர்வுக்கான திறன்களைக் கொண்டுள்ளதுspecs
(string[]
): worker செயல்முறையில் இயக்கப்படும் spec கள்
before
சோதனை இயக்கம் தொடங்குவதற்கு முன் செயல்படுத்தப்படுகிறது. இந்த புள்ளியில் browser
போன்ற அனைத்து உலகளாவிய மாறிகளையும் அணுகலாம். தனிப்பயன் கட்டளைகளை வரையறுக்க இது சிறந்த இடம்.
அளவுருக்கள்:
caps
(object
): worker இல் தொடங்கப்படும் அமர்வுக்கான திறன்களைக் கொண்டுள்ளதுspecs
(string[]
): worker செயல்முறையில் இயக்கப்படும் spec கள்browser
(object
): உருவாக்கப்பட்ட உலாவி/சாதன அமர்வின் instance
beforeSuite
suite தொடங்குவதற்கு முன் செயல்படுத்தப்படும் hook (Mocha/Jasmine இல் மட்டுமே)
அளவுருக்கள்:
suite
(object
): suite விவரங்கள்
beforeHook
suite க்குள் ஒரு hook தொடங்குவதற்கு முன்பு செயல்படுத்தப்படும் hook (எ.கா. Mocha இல் beforeEach அழைப்பதற்கு முன் இயங்குகிறது)
அளவுருக்கள்:
test
(object
): சோதனை விவரங்கள்context
(object
): சோதனை சூழல் (Cucumber இல் World பொருளைக் குறிக்கிறது)
afterHook
suite க்குள் ஒரு hook முடிந்த பிறகு செயல்படுத்தப்படும் hook (எ.கா. Mocha இல் afterEach அழைப்பதற்கு பின் இயங்குகிறது)
அளவுருக்கள்:
test
(object
): சோதனை விவரங்கள்context
(object
): சோதனை சூழல் (Cucumber இல் World பொருளைக் குறிக்கிறது)result
(object
): hook முடிவு (error
,result
,duration
,passed
,retries
பண்புகளைக் கொண்டுள்ளது)
beforeTest
சோதனைக்கு முன் செயல்படுத்தப்படும் function (Mocha/Jasmine இல் மட்டுமே).
அளவுருக்கள்:
test
(object
): சோதனை விவரங்கள்context
(object
): சோதனை செயல்படுத்தப்பட்ட scope object
beforeCommand
WebdriverIO கட்டளை செயல்படுத்தப்படுவதற்கு முன் இயங்குகிறது.
அளவுருக்கள்:
commandName
(string
): கட்டளை பெயர்args
(*
): கட்டளை பெறும் arguments
afterCommand
WebdriverIO கட்டளை செயல்படுத்தப்பட்ட பிறகு இயங்குகிறது.
அளவுருக்கள்:
commandName
(string
): கட்டளை பெயர்args
(*
): கட்டளை பெறும் argumentsresult
(number
): 0 - கட்டளை வெற்றி, 1 - கட்டளை பிழைerror
(Error
): ஏதேனும் பிழை இருந்தால் பிழை பொருள்
afterTest
சோதனை முடிந்த பிறகு செயல்படுத்தப்படும் function (Mocha/Jasmine இல்).
அளவுருக்கள்:
test
(object
): சோதனை விவரங்கள்context
(object
): சோதனை செயல்படுத்தப்பட்ட scope objectresult.error
(Error
): சோதனை தோல்வியுற்றால் பிழை பொருள், இல்லையெனில்undefined
result.result
(Any
): சோதனை functionன் திரும்பும் பொருள்result.duration
(Number
): சோதனையின் கால அளவுresult.passed
(Boolean
): சோதனை தேர்ச்சியடைந்தால் true, இல்லையெனில் falseresult.retries
(Object
): Mocha மற்றும் Jasmine இலும் Cucumber இலும் வரையறுக்கப்பட்டபடி, ஒற்றை சோதனை தொடர்பான மறுமுயற்சிகள் பற்றிய தகவல், எ.கா.{ attempts: 0, limit: 0 }
, பார்க்கவும்result
(object
): hook முடிவு (error
,result
,duration
,passed
,retries
பண்புகளைக் கொண்டுள்ளது)
afterSuite
suite முடிந்த பிறகு செயல்படுத்தப்படும் hook (Mocha/Jasmine இல் மட்டுமே)
அளவுருக்கள்:
suite
(object
): suite விவரங்கள்
after
அனைத்து சோதனைகளும் முடிந்த பிறகு செயல்படுத்தப்படுகிறது. சோதனையிலிருந்து அனைத்து உலகளாவிய மாறிகளையும் இன்னும் அணுகலாம்.
அளவுருக்கள்:
result
(number
): 0 - சோதனை தேர்ச்சி, 1 - சோதனை தோல்விcaps
(object
): worker இல் தொடங்கப்படும் அமர்வுக்கான திறன்களைக் கொண்டுள்ளதுspecs
(string[]
): worker செயல்முறையில் இயக்கப்படும் spec கள்
afterSession
webdriver அமர்வை முடித்த பிறகு செயல்படுத்தப்படுகிறது.
அளவுருக்கள்:
config
(object
): WebdriverIO கட்டமைப்பு பொருள்caps
(object
): worker இல் தொடங்கப்படும் அமர்வுக்கான திறன்களைக் கொண்டுள்ளதுspecs
(string[]
): worker செயல்முறையில் இயக்கப்படும் spec கள்
onComplete
அனைத்து worker களும் முடிக்கப்பட்டு செயல்முறை வெளியேறுவதற்கு முன் செயல்படுத்தப்படுகிறது. onComplete hook இல் ஏற்படும் பிழை சோதனை ஓட்டம் தோல்வியடைவதற்கு காரணமாகும்.
அளவுருக்கள்:
exitCode
(number
): 0 - வெற்றி, 1 - தோல்விconfig
(object
): WebdriverIO கட்டமைப்பு பொருள்caps
(object
): worker இல் தொடங்கப்படும் அமர்வுக்கான திறன்களைக் கொண்டுள்ளதுresult
(object
): சோதனை முடிவுகளைக் கொண்ட முடிவுகள் பொருள்
onReload
புதுப்பித்தல் நிகழும்போது செயல்படுத்தப்படுகிறது.
அளவுருக்கள்:
oldSessionId
(string
): பழைய அமர்வின் session IDnewSessionId
(string
): புதிய அமர்வின் session ID
beforeFeature
Cucumber Feature முன் இயங்குகிறது.
அளவுருக்கள்:
uri
(string
): feature கோப்பிற்கான பாதைfeature
(GherkinDocument.IFeature
): Cucumber feature பொருள்
afterFeature
Cucumber Feature பிறகு இயங்குகிறது.
அளவுருக்கள்:
uri
(string
): feature கோப்பிற்கான பாதைfeature
(GherkinDocument.IFeature
): Cucumber feature பொருள்
beforeScenario
Cucumber Scenario முன் இயங்குகிறது.
அளவுருக்கள்:
world
(ITestCaseHookParameter
): pickle மற்றும் test step பற்றிய தகவல்களைக் கொண்ட உலக பொருள்context
(object
): Cucumber World பொருள்
afterScenario
Cucumber Scenario பிறகு இயங்குகிறது.
அளவுருக்கள்:
world
(ITestCaseHookParameter
): pickle மற்றும் test step பற்றிய தகவல்களைக் கொண்ட உலக பொருள்result
(object
): scenario முடிவுகளைக் கொண்ட முடிவுகள் பொருள்result.passed
(boolean
): scenario தேர்ச்சியடைந்தால் trueresult.error
(string
): scenario தோல்வியுற்றால் பிழை stackresult.duration
(number
): scenario கால அளவு (மில்லிவினாடிகளில்)context
(object
): Cucumber World பொருள்
beforeStep
Cucumber Step முன் இயங்குகிறது.
அளவுருக்கள்:
step
(Pickle.IPickleStep
): Cucumber step பொருள்scenario
(IPickle
): Cucumber scenario பொருள்context
(object
): Cucumber World பொருள்
afterStep
Cucumber Step பிறகு இயங்குகிறது.
அளவுருக்கள்:
step
(Pickle.IPickleStep
): Cucumber step பொருள்scenario
(IPickle
): Cucumber scenario பொருள்result
: (object
): step முடிவுகளைக் கொண்ட முடிவுகள் பொருள்result.passed
(boolean
): scenario தேர்ச்சியடைந்தால் trueresult.error
(string
): scenario தோல்வியுற்றால் பிழை stackresult.duration
(number
): scenario கால அளவு (மில்லிவினாடிகளில்)context
(object
): Cucumber World பொருள்
beforeAssertion
WebdriverIO assertion நிகழ்வதற்கு முன் செயல்படுத்தப்படும் hook.
அளவுருக்கள்:
params
: assertion தகவல்params.matcherName
(string
): matcher பெயர் (எ.கா.toHaveTitle
)params.expectedValue
: matcher க்குள் அனுப்பப்படும் மதிப்புparams.options
: assertion விருப்பங்கள்
afterAssertion
WebdriverIO assertion நிகழ்ந்த பிறகு செயல்படுத்தப்படும் hook.
அளவுருக்கள்:
params
: assertion தகவல்params.matcherName
(string
): matcher பெயர் (எ.கா.toHaveTitle
)params.expectedValue
: matcher க்குள் அனுப்பப்படும் மதிப்புparams.options
: assertion விருப்பங்கள்params.result
: assertion முடிவுகள்