के साथ जैस्मीन और ककड़ीजेएस का उपयोग कैसे करें मैं अपनी परियोजना का परीक्षण करने के लिए प्रोटैक्टर, ककड़ीजेएस और जैस्मीन का उपयोग करना चाहता हूं। मैं प्रोटैक्टर के साथ जैस्मीन और ककड़ीजेएस दोनों का उपयोग कैसे करूं?प्रोटैक्टर
/path/to/myproj/protractor.conf.js
exports.config = {
seleniumServerJar: 'node_modules/protractor/selenium/selenium-server-standalone-2.45.0.jar',
specs: [
'features/*.feature'
],
baseUrl: 'http://localhost:8080',
multiCapabilities: [
{
'browserName': 'chrome'
}
],
allScriptsTimeout: 380000,
getPageTimeout: 20000,
framework: 'cucumber',
cucumberOpts: {
require: 'features/stepDefinitions.js',
format: 'summary'
}
};
आप देख सकते हैं, इस परियोजना ढांचे के रूप में "ककड़ी" का उपयोग करता है: यहाँ परियोजना सेटअप मेरे द्वारा बनाए गए है। मैं ककड़ीजेएस के साथ जैस्मीन ढांचे में कैसे जोड़ूं? क्या यह प्रोटैक्टर कॉन्फ़िगरेशन फ़ाइल या कोड में कहीं और होगा?
/path// myproj/सुविधाओं/demo.feature
Feature: Some terse yet descriptive text of what is desired
Scenario: Some determinable business situation
Given some precondition
/path/to/myproj/सुविधाओं/stepDefinitions.js
module.exports = function() {
this.Given(/^some precondition$/, function (callback) {
expect(true).toEqual(true);
callback();
});
};
जब ऐसा करने के लिए मार डाला जाता है , "उम्मीद" परिभाषित नहीं किया गया है, संभवतः क्योंकि जैस्मीन को एकीकृत नहीं किया गया है, और इसके साथ वैश्विक होने की उम्मीद है। यहाँ पूर्ण त्रुटि संदेश है:
$ $(npm bin)/protractor protractor.conf.js
Starting selenium standalone server...
[launcher] Running 1 instances of WebDriver
Selenium standalone server started at http://192.168.1.115:59957/wd/hub
(::) failed steps (::)
ReferenceError: expect is not defined
at World.<anonymous> (/path/to/myproj/features/stepDefinitions.js:3:5)
at process._tickCallback (node.js:355:11)
Failing scenarios:
/path/to/myproj/features/demo.feature:3 # Scenario: Some determinable business situation
1 scenario (1 failed)
1 step (1 failed)
Shutting down selenium standalone server.
[launcher] 0 instance(s) of WebDriver still running
[launcher] chrome #1 failed 1 test(s)
[launcher] overall: 1 failed spec(s)
[launcher] Process exited with error code 1
/path/to/myproj/package.json
{
"name": "myproj",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"devDependencies": {
"cucumber": "0.4.9",
"protractor": "git+https://github.com/angular/protractor.git#0262268fa43b9eefac815d986740efa07bb15818"
}
}
नोट: मैं किसी खास अपने पैकेज में कोणमापक Git भंडार के लिए प्रतिबद्ध उपयोग कर रहा हूँ। जेसन, क्योंकि नवीनतम संस्करण (2.1.0) में a bug है, जो ककड़ीजेएस के साथ एकीकरण को रोकता है।
मोचा एक परीक्षण ढांचे जो चाय सहित किसी भी उम्मीद मॉड्यूल, के उपयोग के लिए अनुमति देता है है। क्या यह एक कारण है कि मोचा यूनिट परीक्षण ढांचे के रूप में लोकप्रिय क्यों है, ताकि ककड़ी परीक्षण लिखने के लिए उपयोग की जाने वाली वही अपेक्षाओं का मॉड्यूल भी परीक्षण परीक्षण में आधारित एक अधिक संगत कोड बनाने के लिए यूनिट परीक्षण लिखने के लिए उपयोग किया जा सके?आपके उत्तर के लिए और CukeFarm सिफारिश के लिए धन्यवाद! –
@AristarkhArtemiy हाँ, यह मोचा के लिए जाने का कारण बहुत अच्छा है। अपने यूनिट परीक्षणों और ककड़ी चरण परिभाषाओं में समान पैटर्न/वाक्यविन्यास (उदाहरण के लिए चाई के साथ) का उपयोग करना एक अच्छी बात है, खासकर यदि अन्य लोगों को कोडबेस में कूदना है। – jbpros
क्या आप कारणों से विस्तार कर सकते हैं कि ककड़ीजेएस और जैस्मीन परस्पर अनन्य क्यों हैं? मैं ई 2 ई परीक्षण चलाने के लिए प्रोटैक्टर में ककड़ीजे को एकीकृत करने की कोशिश कर रहा हूं। अगर मैं यह काम कर सकता हूं तो यह बहुत अच्छा होगा। स्टैक मैं उपयोग कर रहा हूँ: कोणीय 2, वेबपैक, .. –