UNPKG

@teamix/testing-capability

Version:
170 lines (161 loc) 7.07 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); exports.__esModule = true; exports.version = exports.teamixTest = exports["default"] = void 0; var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator")); var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose")); var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator")); var _listenerPostMessage = _interopRequireDefault(require("./module/listenerPostMessage")); var _listenerError = _interopRequireDefault(require("./precheck/listenerError")); var _design = _interopRequireDefault(require("./design")); var _network = _interopRequireDefault(require("./network")); var _module = _interopRequireDefault(require("./module")); var _performance = _interopRequireDefault(require("./performance")); var _ui = _interopRequireDefault(require("./ui")); var _precheck = _interopRequireDefault(require("./precheck")); var _utils = require("./utils"); var _calculate = require("./utils/calculate"); exports.pageCalculate = _calculate.pageCalculate; exports.productCalculate = _calculate.productCalculate; exports.calculateUES = _calculate.calculateUES; exports.calculateSingleUESScore = _calculate.calculateSingleUESScore; var _designRules = require("./design/designRules"); exports.UES_MAP = _designRules.UES_MAP; exports.STANDARD_MAP = _designRules.STANDARD_MAP; var _networkRules = require("./network/networkRules"); exports.NETWORK_RULES = _networkRules.NETWORK_RULES; var _opentest = _interopRequireDefault(require("./opentest")); exports.openTestMap = _opentest["default"]; require("geteventlisteners"); var _excluded = ["ruleType", "testItem", "theme", "brand", "language", "uiPrefix", "proPrefix", "infoLimit", "extendMap"]; /** * 开始监听postMessage数据 */ (0, _listenerPostMessage["default"])(); /** * 开始监听页面报错信息 */ (0, _listenerError["default"])(); /** * teamixTest测试能力 * @param config * @returns result */ var testInner = /*#__PURE__*/function () { var _ref2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee(_ref) { var ruleType, testItem, _ref$theme, theme, _ref$brand, brand, _ref$language, language, _ref$uiPrefix, uiPrefix, _ref$proPrefix, proPrefix, _ref$infoLimit, infoLimit, _ref$extendMap, extendMap, reset, config, actionItem, teamixTestResult, openTestKey; return _regenerator["default"].wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: ruleType = _ref.ruleType, testItem = _ref.testItem, _ref$theme = _ref.theme, theme = _ref$theme === void 0 ? 'light' : _ref$theme, _ref$brand = _ref.brand, brand = _ref$brand === void 0 ? 'default' : _ref$brand, _ref$language = _ref.language, language = _ref$language === void 0 ? 'zh-CN' : _ref$language, _ref$uiPrefix = _ref.uiPrefix, uiPrefix = _ref$uiPrefix === void 0 ? ['.next-'] : _ref$uiPrefix, _ref$proPrefix = _ref.proPrefix, proPrefix = _ref$proPrefix === void 0 ? ['.teamix-pro'] : _ref$proPrefix, _ref$infoLimit = _ref.infoLimit, infoLimit = _ref$infoLimit === void 0 ? 2 : _ref$infoLimit, _ref$extendMap = _ref.extendMap, extendMap = _ref$extendMap === void 0 ? {} : _ref$extendMap, reset = (0, _objectWithoutPropertiesLoose2["default"])(_ref, _excluded); config = (0, _extends2["default"])({}, reset, { ruleType: ruleType, theme: theme, brand: brand, language: language, uiPrefix: uiPrefix, proPrefix: proPrefix, infoLimit: infoLimit, extendMap: extendMap }); (0, _utils.configRecordInfo)(infoLimit); // 根据依赖关系生成执行项 actionItem = testItem === null || testItem === void 0 ? void 0 : testItem.reduce(function (p, c) { // 待测试项的依赖关系 var actionDependencies = { DESIGN: ['DESIGN', 'MODULE', 'NETWORK', 'PERFORMANCE'] }; var mergeActionItem = p.concat(actionDependencies[c] || c); return mergeActionItem; }, []); // 创建检查结果对象 teamixTestResult = { beginTime: new Date().getTime(), endTime: 0 }; /** * 组件库依赖检查 */ if (!actionItem.includes('MODULE')) { _context.next = 9; break; } console.log('moduleTest => ing...'); _context.next = 9; return (0, _module["default"])(config, function (moduleInfo) { teamixTestResult.moduleInfo = moduleInfo; }); case 9: /** * 网络通信检查 */ if (actionItem.includes('NETWORK')) { (0, _network["default"])(config, function (networkResult) { teamixTestResult.networkInfo = networkResult; }); } /** * 页面性能检查 */ if (actionItem.includes('PERFORMANCE')) { (0, _performance["default"])(teamixTestResult, config); } /** * UI覆盖率检查 */ if (actionItem.includes('UI')) { (0, _ui["default"])(teamixTestResult, config); } /** * 体验设计检查 */ if (actionItem.includes('DESIGN')) { (0, _design["default"])(teamixTestResult, config); } /** * 预测试 */ if (actionItem.includes('PRECHECK')) { (0, _precheck["default"])(teamixTestResult, config); } /** * 开放测试能力 */ _context.t0 = _regenerator["default"].keys(_opentest["default"]); case 15: if ((_context.t1 = _context.t0()).done) { _context.next = 23; break; } openTestKey = _context.t1.value; if (!actionItem.includes(openTestKey)) { _context.next = 21; break; } _context.next = 20; return _opentest["default"][openTestKey].test(teamixTestResult, config); case 20: (0, _calculate.optimizeInfo)(teamixTestResult); case 21: _context.next = 15; break; case 23: return _context.abrupt("return", (0, _extends2["default"])({}, teamixTestResult, { endTime: new Date().getTime() })); case 24: case "end": return _context.stop(); } }, _callee); })); return function testInner(_x) { return _ref2.apply(this, arguments); }; }(); var teamixTest = testInner; exports.teamixTest = teamixTest; var version = '1.0.53'; exports.version = version; var _default = teamixTest; exports["default"] = _default;