Validating SDK Startup Stability in nw.js
This test suite validates NW.js SDK startup behavior to prevent crashes, utilizing Selenium WebDriver for automated browser testing. The test focuses on verifying proper window loading and version information display.
Test Coverage Overview
Implementation Analysis
Technical Details
Best Practices Demonstrated
nwjs/nwJs
test/sanity/issue6171-sdk-start-crash/test.py
import time
import os
import sys
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
from nw_util import *
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
chrome_options = Options()
chrome_options.add_argument("nwapp=" + os.path.dirname(os.path.abspath(__file__)))
capabilities = {"pageLoadStrategy": "none"}
driver = webdriver.Chrome(executable_path=os.environ['CHROMEDRIVER'], chrome_options=chrome_options, desired_capabilities = capabilities, service_log_path="log", service_args=["--verbose"])
driver.implicitly_wait(2)
try:
print('waiting for crash')
wait_switch_window_url(driver, 'index.html')
result = wait_for_element_id(driver, 'versions')
#print result
assert('NWjs version' in result)
print('There is no crash')
finally:
driver.quit()