fintech-automation-test
Version:
Autonomous Test Automation
100 lines (98 loc) • 2.51 kB
JavaScript
const { createTestCycle } = require('./src/main/utils/jiraIntegrationUtils');
const OpenAI = require('openai');
const { setWindowSize } = require('@codeceptjs/configure');
const config = require('./config');
setWindowSize(1600, 1200);
exports.config = {
name: 'FAT',
tests: 'src/test/api/tests/**/*_test.js',
output: './output',
helpers: {
AI: {},
ResembleHelper: {
require: 'codeceptjs-resemblehelper',
screenshotFolder: './output/',
baseFolder: './src/visual/base',
diffFolder: './src/visual/actual',
},
REST: {
endpoint: 'https://petstore.swagger.io/v2',
prettyPrintJson: true,
defaultHeaders: {
// use Bearer Authorization
// 'Authorization': 'Bearer 11111',
'Content-Type': 'application/json',
Accept: 'application/json',
},
},
JSONResponse: {},
},
include: {
I: './steps_file.js',
},
bootstrap: async () => {
const {
testCycleId: id,
testCycleKey: key,
testCycleName: name,
} = await createTestCycle();
global.testCycleId = id;
global.testCycleKey = key;
global.testCycleName = name;
console.log(
`Initialized Test Cycle ID: ${global.testCycleId}, ${global.testCycleName}, ${global.testCycleKey}`
);
},
mocha: {
reporterOptions: {
reportDir: 'output',
reportFilename: 'report',
inlineAssets: true,
reportPageTitle: 'Test Report',
reportTitle: 'FAT Test Execution Report',
enableCharts: true,
},
},
plugins: {
heal: {
enabled: true,
},
retryFailedStep: {
enabled: true,
},
screenshotOnFail: {
enabled: true,
},
allure: {
enabled: true,
require: '@codeceptjs/allure-legacy',
outputDir: './output/allure-results',
},
reportportal: {
enabled: true,
require: '@reportportal/agent-js-codecept',
token: config.reportPortalKey,
endpoint: 'http://20.244.5.65:8080/api/v1',
projectName: 'superadmin_personal',
launchName: 'FAT API TESTS',
description: 'tests for the sales',
debug: false,
rerun: false,
},
},
hooks: {},
custom: {
swaggerUrl: 'https://petstore.swagger.io/v2/swagger.json', // Add the Swagger URL here
},
ai: {
request: async (messages) => {
const openai = new OpenAI({ apiKey: config.apikeyCode });
const completion = await openai.chat.completions.create({
model: 'gpt-3.5-turbo-0125',
messages,
});
// return only text content
return completion?.choices[0]?.message?.content;
},
},
};