Сделать интеграционное тестирование JSON
10 000 руб. за проект
Сделать интеграционное тестирование JSON
Мы ищем эксперта, который знает codeception и webception и может создать серию интеграционных тестов. Пожалуйста, ознакомьтесь с прикрепленным файлом с заданием и описанием приложений, прикрепленных к этой задаче.
Мы ожидаем, что вы сделаете следующее:
Настройка:
- Создайте контейнер с установленными codeception и webception
- Используйте тест записи PHP и модуль S3 в коде для подключения хранилища.
- Подключиться к корзине S3 (будут предоставлены ключи API) и скачать файл payload.json (INPUT FILE)
- Отправьте файл payload.json в наш микросервис, который выполняет математические операции (PROCESSOR)
- Подключен к папке S3 (ключи API и подробная информация будут предоставлены), где хранятся результаты (OUTPUT FILES)
Анализ (с использованием OUTPUT FILES):
Comparisons for equality
INPUT: billings.json (Billings in Payload)
OUTPUT: contractPnL.json
Input field
Input Function
Output field
Output Function
invoiceTax
Sum
period. totalInvoiceValueIncTax - period. totalInvoiceValueExTax
Sum
invoiceExTax
Sum
period. totalInvoiceValueExTax
Sum
invoiceIncTax
Sum
period. totalInvoiceValueIncTax
Sum
status
Filter all with
status = VOID
n/a
n/a
INPUT: timesheets.json (Timesheets in Payload)
OUTPUT: contractPnL.json [period level]
Input field
Input Function
Output field
Output Function
sourceTimesheetInterval. SourceDurationMin
Sum
Period. timesheetDurationMin
Sum
INPUT: contractPnL.json [header level]
OUTPUT: contractPnL.json [period level]
Input field
Input Function
Output field
Output Function
totalInvoiceValueExTaxInvoiced
Sum
period. totalInvoiceValueExTax
Sum
contractRevenue
Sum
period.FPValue or period.RRValue or period.subscriptionValue (whichever exists)
Sum
adjustments
Sum
Subtract adjustments from value to get a final result
contractRevenueToDate
Sum
period.FPValue or period.RRValue or period.subscriptionValue (whichever exists)
Sum
Filter by date <= today
adjustments
Sum
Filter by date <= today
Subtract adjustments from value to get a final result
timesheetDurationMin
Sum
timesheetDurationMin
Sum
timesheetDurationMinToDate
Sum
timesheetDurationMin
Sum
Filter by date <= today
adjustmentsTotal
Sum
adjustments
Sum
adjustmentsTotalToDate
Sum
adjustments
Sum
Filter by date <= today
totalInvoiceValueExTaxToDate
Sum
totalInvoiceValueExTax
Sum
Filter by date <= today
totalInvoiceValueIncTaxToDate
Sum
totalInvoiceValueIncTax
Sum
Filter by date <= today
INPUT: contractPnL.json [header level]
OUTPUT: contractPnL.json [header level]
Math
Reason for the check
totalInvoiceValueExTaxToDate - contractRevenueToDate
should equal to billingsRevenueDifferenceToDate
Check A/D revenue iscorrect
Подавать результаты (webception)
- Подключить webception
- Отображение результатов в webception
Результат должен включать Dockerfile и простой Readme, как использовать приложение.
Н./Б.: Мы рассчитываем, что будем работать с кем-то, кто хорошо разбирается в PHP и может хорошо использовать язык для выполнения математических вычислений. Мы не будем использовать какой-либо другой язык.
Мы ищем эксперта, который знает codeception и webception и может создать серию интеграционных тестов. Пожалуйста, ознакомьтесь с прикрепленным файлом с заданием и описанием приложений, прикрепленных к этой задаче.
Мы ожидаем, что вы сделаете следующее:
Настройка:
- Создайте контейнер с установленными codeception и webception
- Используйте тест записи PHP и модуль S3 в коде для подключения хранилища.
- Подключиться к корзине S3 (будут предоставлены ключи API) и скачать файл payload.json (INPUT FILE)
- Отправьте файл payload.json в наш микросервис, который выполняет математические операции (PROCESSOR)
- Подключен к папке S3 (ключи API и подробная информация будут предоставлены), где хранятся результаты (OUTPUT FILES)
Анализ (с использованием OUTPUT FILES):
Comparisons for equality
INPUT: billings.json (Billings in Payload)
OUTPUT: contractPnL.json
Input field
Input Function
Output field
Output Function
invoiceTax
Sum
period. totalInvoiceValueIncTax - period. totalInvoiceValueExTax
Sum
invoiceExTax
Sum
period. totalInvoiceValueExTax
Sum
invoiceIncTax
Sum
period. totalInvoiceValueIncTax
Sum
status
Filter all with
status = VOID
n/a
n/a
INPUT: timesheets.json (Timesheets in Payload)
OUTPUT: contractPnL.json [period level]
Input field
Input Function
Output field
Output Function
sourceTimesheetInterval. SourceDurationMin
Sum
Period. timesheetDurationMin
Sum
INPUT: contractPnL.json [header level]
OUTPUT: contractPnL.json [period level]
Input field
Input Function
Output field
Output Function
totalInvoiceValueExTaxInvoiced
Sum
period. totalInvoiceValueExTax
Sum
contractRevenue
Sum
period.FPValue or period.RRValue or period.subscriptionValue (whichever exists)
Sum
adjustments
Sum
Subtract adjustments from value to get a final result
contractRevenueToDate
Sum
period.FPValue or period.RRValue or period.subscriptionValue (whichever exists)
Sum
Filter by date <= today
adjustments
Sum
Filter by date <= today
Subtract adjustments from value to get a final result
timesheetDurationMin
Sum
timesheetDurationMin
Sum
timesheetDurationMinToDate
Sum
timesheetDurationMin
Sum
Filter by date <= today
adjustmentsTotal
Sum
adjustments
Sum
adjustmentsTotalToDate
Sum
adjustments
Sum
Filter by date <= today
totalInvoiceValueExTaxToDate
Sum
totalInvoiceValueExTax
Sum
Filter by date <= today
totalInvoiceValueIncTaxToDate
Sum
totalInvoiceValueIncTax
Sum
Filter by date <= today
INPUT: contractPnL.json [header level]
OUTPUT: contractPnL.json [header level]
Math
Reason for the check
totalInvoiceValueExTaxToDate - contractRevenueToDate
should equal to billingsRevenueDifferenceToDate
Check A/D revenue iscorrect
Подавать результаты (webception)
- Подключить webception
- Отображение результатов в webception
Результат должен включать Dockerfile и простой Readme, как использовать приложение.
Н./Б.: Мы рассчитываем, что будем работать с кем-то, кто хорошо разбирается в PHP и может хорошо использовать язык для выполнения математических вычислений. Мы не будем использовать какой-либо другой язык.
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.