Примеры тестовых сценариев Postman

Публикация № 1545930 08.11.21

Интеграция с оборудованием и сервисами - WEB-интеграция

Перевод статьи https://learning.postman.com/docs/writing-scripts/script-references/test-examples/

От переводчика: перевожу как основу для статьи по полноценному описанию и тестированию API сервиса. До этого были связанные с этой темой статьи по OpenAPI и Использование скриптов . Ссылка на Postman.

---

Postman предоставляет API-интерфейсы JavaScript, которые вы можете использовать в своих сценариях запросов. Объект pm предоставляет большую часть функциональных возможностей для тестирования данных запроса и ответа, а объект postman обеспечивает некоторый дополнительный контроль рабочего процесса.

Вы можете использовать вкладку Tests в своих запросах и коллекциях для написания тестов, которые будут выполняться, когда Postman получит ответ от API, которому вы отправили запрос. Вы можете добавить столько тестов, сколько вам нужно для каждого запроса. Когда вы добавляете тесты в Collections, они будут выполняться после каждого запроса внутри нее.

Postman отображает фрагменты кода справа от области сценария. Вы можете добавить их, чтобы опробовать распространенные сценарии, и настроить их в соответствии с вашими потребностями и деталями запроса / ответа.

 

Начало работы с тестами

Чтобы попробовать написать тестовый сценарий в первый раз, откройте запрос в приложении Postman и откройте вкладку Tests. Введите следующий код JavaScript:

pm.test("Status code is 200", function () {
  pm.response.to.have.status(200);
});

Этот код использует библиотеку pm для запуска testметода. Текстовая строка появится в выводе теста. Функция внутри теста представляет собой утверждение. Тесты почтальона могут использовать синтаксис BDD библиотеки утверждений Chai, который предоставляет возможности для оптимизации того, насколько удобочитаемы ваши тесты для вас и ваших сотрудников. В этом случае код использует цепочки BDD to.haveдля выражения утверждения.

Этот тест проверяет код ответа, возвращаемый API. Если код ответа есть 200, тест пройдет, в противном случае он завершится неудачей. Нажмите Отправить и проверьте вывод результатов теста в области ответов.

Попробуйте изменить код состояния в коде утверждения и запустить его снова, чтобы увидеть, как результаты теста выглядят по-разному, когда они проходят или не проходят.

Вы можете структурировать свои тестовые утверждения различными способами в соответствии с вашей логикой и предпочтениями с точки зрения того, как вы хотите выводить результаты. Следующий код является альтернативным способом выполнения того же теста, что и приведенный выше, с использованием expectсинтаксиса:

pm.test("Status code is 200", () => {
  pm.expect(pm.response.code).to.eql(200);
});

 

Использование нескольких утверждений

Ваши тесты могут включать несколько утверждений как часть одного теста, вы можете использовать это для группировки связанных утверждений.

pm.test("The response has all properties", () => {
    // разобрать json ответ и проверить три свойства
    const responseJson = pm.response.json();
    pm.expect(responseJson.type).to.eql('vip');
    pm.expect(responseJson.name).to.be.a('string');
    pm.expect(responseJson.id).to.have.lengthOf(1);
});

Если какое-либо из содержащихся утверждений завершится неудачно, тест в целом завершится неудачно. Все утверждения должны быть успешными, чтобы тест прошел успешно.

Примечание переводчика: как прервать проверку если условие не выполнено нужно уточнить.

 

Анализ данных тела ответа

Чтобы выполнить утверждения в ваших ответах, вам сначала нужно будет проанализировать данные в объекте JavaScript, который могут использовать ваши утверждения.

Для разбора данных JSON используйте следующий синтаксис:

const responseJson = pm.response.json();

Для разбора XML используйте следующее:

const responseJson = xml2Json(pm.response.text());

Примечание: Если вы имеете дело со сложными XML-ответами, вам может пригодиться запись в журнал консоли.

Для анализа CSV используйте утилиту анализа CSV:

const parse = require('csv-parse/lib/sync');
const responseJson = parse(pm.response.text());

Для анализа HTML вы можете использовать cheerio:

const $ = cheerio.load(pm.response.text());
//вывод html-кода для тестирования
console.log($.html());

 

Обработка ответов, которые не парсятся

Если вы не можете проанализировать тело ответа на JavaScript, потому что оно не отформатировано как JSON, XML, HTML, CSV или любой другой формат данных, поддающийся анализу, вы все равно можете делать утверждения в отношении данных.

Вы можете проверить, содержит ли тело ответа строку:

pm.test("Body contains string",() => {
  pm.expect(pm.response.text()).to.include("customer_id");
});

Это не покажет вам, где была обнаружена строка, потому что она выполняет проверку всего тела ответа. 

Вы также можете проверить, соответствует ли ответ строке (что обычно эффективно только при коротких ответах):

pm.test("Body is string", function () {
  pm.response.to.have.body("whole-body-text");
});

Примечание переводчика: для формата например "x-form-urlencoded" и подобного думаю возможно найти библиотеки и подключить их в тесты.

 

Создание утверждений в HTTP-ответе

Ваши тесты могут проверять различные аспекты ответа на запрос, включая текст, коды состояния, заголовки, файлы cookie, время ответа и многое другое.

 

Тестирование тела ответа

Вы можете проверить наличие определенных значений в теле ответа:

pm.test("Person is Jane", () => {
  const responseJson = pm.response.json();
  pm.expect(responseJson.name).to.eql("Jane");
  pm.expect(responseJson.age).to.eql(23);
});

 

Тестирование кодов состояния

Вы можете проверить код состояния ответа:

pm.test("Status code is 201", () => {
  pm.response.to.have.status(201);
});

Если вы хотите проверить, является ли код состояния одним из набора, вы можете включить их все в массив и использоватьoneOf:

pm.test("Successful POST request", () => {
  pm.expect(pm.response.code).to.be.oneOf([201,202]);
});

 

Тестирование заголовков

Вы можете проверить наличие заголовка ответа:

pm.test("Content-Type header is present", () => {
  pm.response.to.have.header("Content-Type");
});

Вы также можете проверить заголовок ответа, имеющий определенное значение:

pm.test("Content-Type header is application/json", () => {
  pm.expect(pm.response.headers.get('Content-Type')).to.eql('application/json');
});

 

Тестирование файлов cookie

Примечание переводчика: По сути это заголовок с в виде строки c данными разделенными ";".

Вы можете проверить, присутствует ли файл cookie в ответе:

pm.test("Cookie JSESSIONID is present", () => {
  pm.expect(pm.cookies.has('JSESSIONID')).to.be.true;
});

Вы также можете проверить наличие определенного значения файла cookie:

pm.test("Cookie isLoggedIn has value 1", () => {
  pm.expect(pm.cookies.get('isLoggedIn')).to.eql('1');
});

 

Тестирование времени отклика

Вы можете проверить, чтобы время отклика находилось в заданном диапазоне:

pm.test("Response time is less than 200ms", () => {
  pm.expect(pm.response.responseTime).to.be.below(200);
});

 

Общие примеры проверок (assertion)

Читайте дальше, чтобы найти некоторые примеры распространенных проверок, которые могут оказаться полезными в ваших сценариях, как они описаны ниже, или отредактировав детали в соответствии с вашими собственными потребностями.

 

Проверка значения ответа по переменной

Вы можете проверить, имеет ли свойство ответа то же значение, что и переменная (в данном случае переменная среды).

pm.test("Response property matches environment variable", function () {
  pm.expect(pm.response.json().name).to.eql(pm.environment.get("name"));
});

В разделе Использование переменных приведен обзор операций, которые можно использовать для управления переменными в ваших сценариях.

 

Проверка типа значения

Вы можете проверить тип любой части ответа.

/* ответ имеет такую структуру:
{
  "name": "Jane",
  "age": 29,
  "hobbies": [
    "skating",
    "painting"
  ],
  "email": null
}
*/
const jsonData = pm.response.json();
pm.test("Test data type of the response", () => {
  pm.expect(jsonData).to.be.an("object");
  pm.expect(jsonData.name).to.be.a("string");
  pm.expect(jsonData.age).to.be.a("number");
  pm.expect(jsonData.hobbies).to.be.an("array");
  pm.expect(jsonData.website).to.be.undefined;
  pm.expect(jsonData.email).to.be.null;
});

 

Проверка свойств массива

Вы можете проверить, является ли массив пустым или нет, и содержит ли он определенные элементы.

/*
ответ имеет такую структуру:
{
  "errors": [],
  "areas": [ "goods", "services" ],
  "settings": [
    {
      "type": "notification",
      "detail": [ "email", "sms" ]
    },
    {
      "type": "visual",
      "detail": [ "light", "large" ]
    }
  ]
}
*/

const jsonData = pm.response.json();
pm.test("Test array properties", () => {
    //массив ошибок пуст
  pm.expect(jsonData.errors).to.be.empty;
    //массив включает в себя "товары"
  pm.expect(jsonData.areas).to.include("goods");
    
  //получить объект настроек уведомлений
  const notificationSettings = jsonData.settings.find
      (m => m.type === "notification");
  pm.expect(notificationSettings)
    .to.be.an("object", "Could not find the setting");
    //массив "detail" должен включать "sms"
  pm.expect(notificationSettings.detail).to.include("sms");
    //массив "detail" должен включать все перечисленные элементы
  pm.expect(notificationSettings.detail)
    .to.have.members(["email", "sms"]);
});

 

Проверка свойств объекта

Вы можете проверить, что объект содержит ключи или свойства.

pm.expect({a: 1, b: 2}).to.have.all.keys('a', 'b');
pm.expect({a: 1, b: 2}).to.have.any.keys('a', 'b');
pm.expect({a: 1, b: 2}).to.not.have.any.keys('c', 'd');
pm.expect({a: 1}).to.have.property('a');
pm.expect({a: 1, b: 2}).to.be.an('object')
  .that.has.all.keys('a', 'b');

Целью может быть objectsetarrayили map. Если .keysвыполняется без .allили .any, выражение по умолчанию равно .all. Поскольку .keysповедение зависит от type, рекомендуется проверить typeперед использованием .keysс помощью .a.

 

Проверка, что значение находится в наборе

Вы можете проверить значение ответа по списку допустимых параметров.

pm.test("Value is in valid list", () => {
  pm.expect(pm.response.json().type)
    .to.be.oneOf(["Subscriber", "Customer", "User"]);
});

 

Проверка, что объект содержится в ответе

Вы можете проверить, является ли объект частью родительского объекта.

/*
ответ имеет следующую структуру:
{
  "id": "d8893057-3e91-4cdd-a36f-a0af460b6373",
  "created": true,
  "errors": []
}
*/

pm.test("Object is contained", () => {
  const expectedObject = {
    "created": true,
    "errors": []
  };
  pm.expect(pm.response.json()).to.deep.include(expectedObject);
});

Использование .deepзаставляет все.equal.include,.members,.keys, и .propertyутверждения , которые следуют в цепочке, использовать глубокое равенство (свободное равенство) вместо строгого (===) равенства. В то время .eqlкак также сравнивается слабо, .deep.equalприводит к тому, что сравнения с глубоким равенством также используются для любых других утверждений, которые следуют в цепочке, в то время .eqlкак это не так.

 

Проверка текущего окружения

Вы можете проверить активную (выбранную в данный момент) среду в Postman.

pm.test("Check the active environment", () => {
  pm.expect(pm.environment.name).to.eql("Production");
});

 

Устранение распространенных ошибок тестирования

Когда вы сталкиваетесь с ошибками или неожиданным поведением в своих тестовых сценариях, консоль почтальона может помочь вам определить источник. Комбинируя console.logинструкции отладки с утверждениями теста, вы можете изучить содержимое HTTP-запросов и ответов, а также элементы данных почтальона, такие как переменные.

 

Вы можете записать значение переменной или свойства ответа:

console.log(pm.collectionVariables.get("name"));
console.log(pm.response.json().name);

Вы можете записать тип переменной или свойства ответа:

console.log(typeof pm.response.json().id);

Вы можете использовать журналы консоли для обозначения выполнения кода, иногда известного как "операторы трассировки":

if (pm.response.json().id) {
  console.log("id was found!");
  // do something
} else {
  console.log("no id ...");
  //do something else
}

 

Ошибка проверки равенства

Вы можете столкнуться с AssertionError: expected <value> to deeply equal '<value>'. Например, это может возникнуть при использовании следующего кода:

pm.expect(1).to.eql("1");

Это происходит потому, что тест сравнивает число со строковым значением. Тест вернет значение true только в том случае, если и тип, и значение равны.

 

Ошибка JSON не определен

Вы можете столкнуться с этой ReferenceError: jsonData is not definedпроблемой. Обычно это происходит, когда вы пытаетесь ссылаться на объект JSON, который не был объявлен или находится за пределами области действия вашего тестового кода.

pm.test("Test 1", () => {
  const jsonData = pm.response.json();
  pm.expect(jsonData.name).to.eql("John");
});

pm.test("Test 2", () => {
  pm.expect(jsonData.age).to.eql(29); // jsonData не определен
});

Убедитесь, что любой код, устанавливающий данные вашего ответа в переменную, доступен для всего тестового кода, например, в этом случае вызовconst jsonData = pm.response.json();перед pm.testсделает его доступным для обеих тестовых функций.

 

Неопределенная ошибка проверки

Вы можете столкнуться с этой AssertionError: expected undefined to deeply equal..проблемой. Обычно это происходит, когда вы ссылаетесь на свойство, которое не существует или находится вне области действия.

pm.expect(jsonData.name).to.eql("John");

В приведенном выше примере, если вы видите AssertionError: expected undefined to deeply equal 'John', это указывает на то, что nameсвойство не определено в jsonDataобъекте.

 

Тест не провалился

Могут быть случаи, когда вы ожидаете, что тест провалится, но этого не происходит.

//тестовая функция не определена должным образом - отсутствует второй параметр
pm.test("Not failing", function () {
    pm.expect(true).to.eql(false);
});

Убедитесь, что ваш тестовый код синтаксически корректен, и повторите попытку отправки запроса.

 

Проверка структуры ответа

Вы можете выполнить проверку схемы JSON с помощью tv4

Примечание переводчика: Tiny Validator (for v4 JSON Schema), устарел, выдает общий статус проверки.

const schema = {
 "items": {
 "type": "boolean"
 }
};
const data1 = [true, false];
const data2 = [true, 123];

pm.test('Schema is valid', function() {
  pm.expect(tv4.validate(data1, schema)).to.be.true;
  pm.expect(tv4.validate(data2, schema)).to.be.true;
});

Вы также можете проверить схему JSON с помощью ajv по умолчанию.

Примечание переводчика: Ajv JSON schema validator, выдает развернутую ошибку AssertionError: expected data to satisfy schema but found following errors:...

const schema = {
  "properties": {
    "alpha": {
      "type": "boolean"
    }
  }
};
pm.test('Schema is valid', function() {
  pm.response.to.have.jsonSchema(schema);
});

Примечание переводчика: Использование Ajv для объекта

var Ajv = require('ajv'),
    ajv = new Ajv({logger: console});

pm.test("Response use a valid schema", function() {
    pm.expect(ajv.validate(cam, RECTILINEAR_SCHEMA)).to.be.true;
    });

 

Отправка асинхронного запроса

Вы можете отправить запрос из своего кода тестов и зарегистрировать ответ.

pm.sendRequest("https://postman-echo.com/get", function (err, response) {
    console.log(response.json());
});

 

Следующие шаги

Вы можете автоматизировать свои тестовые запуски с помощью программы сбора данных.

 

Благодарю за внимание.

Специальные предложения

Оставьте свое сообщение

См. также

.Net в 1С. На примере использования HTTPClient, AngleSharp. Удобный парсинг сайтов с помощью библиотеки AngleSharp, в том числе с авторизацией аля JQuery с использованием CSS селекторов. Динамическая компиляция Промо

WEB v7.7 v8 Бесплатно (free)

Часто приходится парсить сайты, в том числе с авторизацией, перескакивая со страницы на страницу по ссылкам. Тот, кто занимался вэб программированием, знает, как удобно использовать JQuery и CSS селекторы. На .Net написана очень удобная библиотека AngleSharp. Я покажу, как с её помощью можно значительно облегчить себе труд.

10.03.2016    58591    Serginio    33    

Web консоль управления сеансами 1С

WEB v8 1cv8.cf Бесплатно (free)

Мы дали ему название adm1c, он позволяет посредством веб доступа удалять или смотреть на сеансы в 1С базах и при необходимости удалять их. Да и что тут такого, сказали бы, есть же консоль на win, с нее же это можно делать, и все верно, но есть пара но.

вчера в 06:00    527    4ernuy    0    

Безголовая (Headless) архитектура построения eCommerce

WEB Бесплатно (free)

Обобщение материалов по безголовой архитектуре построения eCommerce.

10.11.2021    416    malikov_pro    9    

Понимание схемы JSON (JSON Schema), часть 2

WEB Бесплатно (free)

Перевод книги https://json-schema.org/understanding-json-schema/

09.11.2021    902    malikov_pro    0    

Online телефонный справочник из 1С: Зарплата и управление персоналом Промо

WEB Управление персоналом (HRM) Управление персоналом (HRM) v8 ЗУП3.x Россия Бесплатно (free)

В интернете представлено много реализаций online телефонных справочников организаций. Есть справочники, которые использует для хранения информации базу Active Directory (LDAP), есть справочники, которые реализованы с использованием СУБД (например, MySQL). Но я не нашел справочника, который использует информацию из базы 1С. Далее я рассмотрю данную разработку.

10.03.2017    27420    ruha    21    

Тонкости и подводные камни работы типового модуля интеграции Битрикс24 и 1С

WEB Интеграция с сервисами v8 1cv8.cf Россия Бесплатно (free)

Цель статьи - указать на подводные камни и нюансы, о которых “не пишут на заборах” и которые встретились мне за время внедрения типового модуля интеграции 1С и Битрикс24. Будет интересна для людей, кто подумывает о том, чтобы настроить интеграцию, и хотят понять, с чем столкнутся. А также для тех, кто уже работает с подобным обменом, столкнулся с какими-то из описанных ситуаций и хочет понять, что пошло не так и “как жить дальше”. Постараюсь все описать “человеческим” языком с минимальной долей терминов, так как статья, надеюсь, будет полезна не только программистам.

07.11.2021    1177    freegman74    10    

Внешняя компонента как REST-API-компонента...

Разработка внешних компонент WEB Linux v8 Бесплатно (free)

...и совсем немного кода на С[++]...

01.11.2021    1127    starik-2005    10    

Телеграм, 1С http-сервис, webhook по SSL

WEB Бесплатно (free)

Как установить Телеграм webhook по HTTPS на 1С http-сервис используя самоподписанный (self signed) сертификат на IP адрес. Личный опыт.

31.10.2021    1953    Goody    16    

Информер для сайта , актуальные релизы 1С + Проверка подписки ИТС. Промо

WEB Инструменты администратора БД Сервисные утилиты Бесплатно (free)

Небольшой код который встраивается на сайт и выводит информацию о последних релизах конфигураций 1С

12.09.2014    41243    Malfarion    34    

Использование Gatekeeper для авторизации доступа к HTTP публикации сервера 1С

Администрирование ИТ-инфраструктуры Информационная безопасность WEB v8 Бесплатно (free)

В статье опишу вариант настройки Keycloack и GoGatekepper для авторизации доступа к HTTP публикации сервера 1С

22.10.2021    604    malikov_pro    0    

Повышение производительности веб-сервисов. Переиспользование сеансов

WEB HighLoad оптимизация v8 Бесплатно (free)

Повышение производительности веб-сервисов. Переиспользование сеансов. Практическая реализация.

20.10.2021    1631    sorter1    2    

Когда интерфейсам 1С нужны веб-технологии

WEB Работа с интерфейсом Бесплатно (free)

Есть несколько способов сделать интерфейс в 1С богаче и оптимальнее с помощью веб-технологий. О том, какие практические приемы помогут в этой задаче, на митапе «Интерфейс в 1С» рассказали руководители разработки в компании «Арбис» Матвей Серегин и Анна Гнатюк.

15.10.2021    2607    Akcium    10    

Кэширование COM-соединения. Три способа Промо

Перенос данных из 1С7.7 в 1C8.X Внешние источники данных WEB Практика программирования v8 Россия Бесплатно (free)

Статья о трех способах кэширования COM-соединения в 1С:Предприятии 8.x.

11.04.2013    43169    YPermitin    42    

WEB/HTTP сервисы. Базовые отличия и применение на практике

WEB Практика программирования v8 Бесплатно (free)

Рассказываем о WEB и HTTP сервисах, их практическом применении, о шишках, которые мы набили, и о выводах, которые сделали. Спойлер: тех, кто дочитает статью до конца, ждет бонус от автора.

04.10.2021    5756    Neti    14    

Swagger для 1С. Описание сложной структуры входящих и исходящих данных

WEB OneScript Россия Бесплатно (free)

Анонс нового функционала 1Script пакета swagger версии 0.5.0.

04.10.2021    2136    kuleshov.x    7    

Интеграция 1С с ГИИС ДМДК

Обмен через XML WEB v8 ERP2 Ювелирная промышленность и торговля Россия Бесплатно (free)

ГИИС ДМДК - единая информационная платформа для взаимодействия участников рынка драгоценных металлов и драгоценных камней. с 01.09.21 стартовал обязательный обмен данными с Федеральной пробирной палатой (ФПП) исключительно через ГИИС. А постепенно - с 01.01.2022 и с 01.03.2022 - все данные о продаже драгоценных металлов и камней должны быть интегрированы с ГИИС. У многих пользователей возникает вопрос как автоматизировать обмен между программой 1С и ГИИС ДМДК. В настоящей статье ВЦ Раздолье поделится своим опытом о реализации такого обмена. Автор статьи - Мордовин Антон - архитектор систем на базе 1С Внедренческого центра "Раздолье".

30.09.2021    4226    1СERP    35    

Заготовка для загрузки файлов по ftp Промо

WEB Перенос данных из 1C8 в 1C8 v8 1cv8.cf Бесплатно (free)

3 процедуры и 1 макет

03.06.2013    31324    anig99    6    

Интеграция 1С с Битрикс24 через вебхуки

WEB v8 1cv8.cf Россия Бесплатно (free)

Пример получения токена и http запрос к API битрикса.

15.09.2021    1735    TyurinArt    8    

Бесплатный сертификационный курс Интеграция API Яндекс.Маршрутизации и программных продуктов на базе 1С (22 сентября - 5 октября 2021 года)

WEB Бесплатно (free)

Курс позволит получить востребованную квалификацию по работе с API Яндекс.Маршрутизации, поможет разобраться с особенностями настройки сервиса и научит реализовывать сложные операционные бизнес-схемы, чтобы быстрее интегрировать его в своей компании или на стороне клиента, снижая затраты на логистику на 10-20% и повышая маржинальность организации до 2х раз. Сертифицированные специалисты также смогут присоединиться к агентской программе Яндекс.Маршрутизации и получать дополнительный доход от продажи лицензий и проведения работ по интеграции сервиса.

13.09.2021    1333    routing    0    

Внедрение веб-клиента – взгляд изнутри программиста 1С со стороны заказчика

WEB Бесплатно (free)

Программист 1С в компании TELS Виталий Ильинчик выступил на онлайн-митапе «Web-клиент для 1С». Он рассказал о том, с какими проблемами столкнется ИТ-отдел заказчика и как их можно предупредить. За основу взят опыт внедрения веб-кабинета поставщика на платформе vCan-Site.

10.09.2021    1066    wtlz    0    

Организация удаленного доступа к корпоративной информационной системе — это просто ! Промо

Внешние источники данных Монитор заказов WEB Монитор заказов Бесплатно (free)

Хочу поделиться своим опытом создания web морды к корпоративной информационной системе на базе 1С. Необходимо организовать сбор заказов от удаленных пользователей. - Каждый пользователь видит свой набор данных, и работает со своими документами. - Доступ по логину/паролю, работа в основном с планшетов (iPad) или с десктопа. - Сервер должен находиться за пределами организации. - Себестоимость 1 пользователя не более 10$ за месяц. - Использование в основном мобильного канала связи GPRS (~100 КБ/с).

31.08.2012    29117    avhrst    13    

Обмен с HTTP сервисом файлами по формату multipart/form-data

WEB v8 1cv8.cf Россия Бесплатно (free)

Потребовалось отправить картинку в теле запроса в HTTP сервис методом POST, куча реализаций, но есть маленькие нюансы, если хотя бы кому-то поможет, то уже это было не напрасно.

07.09.2021    2689    ix5s    21    

Разработка гибридного web-приложения на 1С, возможности и ограничения

WEB v8 Бесплатно (free)

Все чаще разработчики склоняются к использованию 1C в качестве бэкенда при разработке веб-приложений. Но благодаря встраиванию веб-клиента 1С в сайт можно получить еще больше готовой функциональности. О том, как реализовать гибридное приложение за счет связки 1С с другими веб-технологиями, рассказал разработчик компании Neti Эльдар Мингалиев.

06.09.2021    2731    Бэнни    11    

Работа с WEB-сервисами под HTTPS на примере прямого обмена между базами (1С – 1С) 

Обмен данными и распределенная БД WEB v8 Россия Бесплатно (free)

Использование веб-сервисов 1С при обмене 1С – 1С позволяет быстро передавать достаточно большие объемы данных из базы-источника в базу-приемник в объектах языка 1С. Данный метод обмена может применяться при бесшовной интеграции между двумя базами 1С, но требует определенной серверной инфраструктуры (установленного и настроенного WEB-сервера).

03.09.2021    6177    UltraUnion2005    8    

Глава 2. Как я написал (собрал с инфостарта) свой парсер сайта 1С Releases

WEB Практика программирования v8 1cv8.cf 1С:Франчайзи, автоматизация бизнеса Россия Бесплатно (free)

Путешествие начинающего программиста 1С. Глава вторая. Призываем экспертов в комментарии, оптимизируем код, ругаемся на кривые руки автора. Автор же, в свою очередь, делится своим опытом, читает умные комментарии, стремится дать те знания, за которыми он сидел ночами тем, кто их хочет найти.

31.08.2021    896    ldmonster    4    

Взаимодействие с api Честный знак (Молочная продукция)

WEB Универсальные функции Практика программирования v8 1cv8.cf Бесплатно (free)

Обзор основных примеров взаимодействия с Честным знаком по api для нетиповых конфигураций.

30.08.2021    2053    user5300    45    

Умная маршрутизация: о сложностях интеграции с 1С (часть 2)

WEB v8 УТ11 Бесплатно (free)

В статье будет много примеров кода с комментариями работы расширения для обмена данными УТ11.4 с Яндекс.Маршрутизацией через выгрузку/загрузку EXCEL файла.

27.08.2021    1954    greencactus    6    

Встраивание форм 1С на страницы сайта

WEB v8 1cv8.cf Бесплатно (free)

В платформе 8.3.16 появилась возможность выводить на страницах сайта информацию из веб-клиента 1С так, что пользователь даже не заметит, что работает с платформой. Руководитель компании Айтон Михаил Пинягин на онлайн-митапе «Web-клиенты для 1С» рассказал о том, какие особенности нужно учесть при настройке встраиваемого веб-клиента, и какие возможности он дает.

27.08.2021    2767    mikepin    9    

WEB-интерфейсы как механизм сбора и контроля данных в розничной сети. Инструменты и наработки

WEB 1cv8.cf Бесплатно (free)

Веб-интерфейсы упрощают сбор информации и помогают оперативно контролировать процессы на предприятии. О том, как реализовать сервис, собирающий данные от управляющих розничных точек через веб-интерфейс, и какие инструменты для построения такого сервиса можно использовать, на онлайн-митапе «Web-клиенты для 1С» рассказал ИТ-директор компании ИТВОРКС Антон Шаганов.

24.08.2021    1268    itworks    3    

Гарри Поттер и подкапотное пространство веб-клиента

WEB v8 Бесплатно (free)

При разработке сайтов, интегрированных с 1С через HTTP-сервисы, приходится бороться с кодировками, искать производительные интерфейсные решения и задумываться над безопасностью. В ходе онлайн-митапа «Web-клиенты для 1С» Юрий Лазаренко показал на практике, как работает магия самодельного веб-клиента и как решать проблемы, возникающие при интеграции.

20.08.2021    2921    TitanLuchs    19    

Умная маршрутизация: кейс интеграции с 1С (часть 1)

WEB v8 Бесплатно (free)

Как мы решали проблемы с доставкой в нашем интернет-магазине, внедрили новый бизнес-процесс за 3 месяца и научились меньшим количеством машин привозить больше заказов клиентам.

18.08.2021    4343    greencactus    40    

Девопсы в 1С: микросервис распознавания штрихкодов

WEB Git (GitHub, GitLab, BitBucket) DevOps Практика программирования Бесплатно (free)

Распознавание штрихкода из сканированного документа в PDF.

09.08.2021    1568    alexey_kurdyukov    8    

Примеры вызова в 1С методов API до реестров открытой части Электронного кабинета налогоплательщика (Украина)

WEB v8 Украина Бесплатно (free)

Примеры вызова в 1С методов API до реестров открытой части Электронного кабинета налогоплательщика, Украина. Тестирование проводил на 1С:Предприятие 8.3 (8.3.10.2561).

28.07.2021    870    Pervuy    4    

Телеграм-бот как инструмент

WEB v8 1cv8.cf Бесплатно (free)

Статья больше для начинающих программистов о том, как можно помочь самому себе при доработке 1С или при разработке собственных решений.

21.07.2021    4192    M_A_D    19    

FastAPI (python) - инструмент для быстрого создания Веб сервиса (WSGI) с REST api

WEB Бесплатно (free)

Ознакомительная статья по FastAPI (python) - инструменту быстрого создания Веб сервиса (WSGI) с REST api.

19.04.2021    7732    Идальго    25    

Wildberries. Заполнение карточек товаров. Как получить значение справочников?

WEB Бесплатно (free)

Wildberries. Заполнение карточек товаров. Как получить значение справочников? в документации это описано очень скромно, пытаюсь рассказать на основании своего опыта.

31.03.2021    2449    sergeyisa    1    

Как получить ключ поставщика Wildberries (uuID), supplierID, Идентификатор поставщика

WEB Бесплатно (free)

Как получить ключ поставщика Wildberries (uuID), supplierID, Идентификатор поставщика, для работы с карточками товара.

18.03.2021    6158    sergeyisa    9    

Правила обмена больше не нужны

Внешние источники данных Обмен через XML Перенос данных из 1C8 в 1C8 Распределенная БД (УРИБ, УРБД) WEB v8 Бесплатно (free)

Есть несколько общепринятых подходов к написанию обмена между 1С-системами, каждый из которых упирается в длительное изучение технологии, мучительную отладку правил конвертации и написание большого количества сервисного кода, в котором потом тяжело разобраться. О принципах работы универсального фреймворка liteExchange, который реализует быстрые обмены между 1С и внешними системами, и берет на себя всю техническую обвязку по стандартному преобразованию данных, на INFOSTART MEETUP Saint Petersburg.Online рассказал Николай Крылов.

17.03.2021    12357    Nikola23    40    

Интеграция "1С:Управление торговлей 10.3" с Yandex SpeechKit для распознавания телефонных звонков

WEB Интеграция с сервисами Телефония, SIP Бесплатно (free)

Распознавание телефонных звонков позволяет контролировать работу менеджеров, организовать для них дополнительный KPI, помогает разбирать конфликты и категоризировать звонки по вхождению слов. О своем опыте интеграции «1С:Управления торговлей 10.3» и сервиса Yandex SpeechKit на INFOSTART MEETUP Saint Petersburg.Online рассказал ИТ-директор компании «Умный дом» Федор Рыжков.

12.03.2021    1310    zzhiraf_    0    

Как отправить сообщение Telegram в группу?

WEB v8 Россия Бесплатно (free)

Отправка сообщения в группу Telegram.

01.03.2021    3581    kite2    2    

Доступ из базы 1С к стандартному интерфейсу Odata базы 1С, в которой заведен пользователь

WEB v8 Россия Бесплатно (free)

Есть база, с пользователем/паролем, нужно подключиться к Odata из другой базы 1С, получить элементы справочника.

24.02.2021    1032    user823999    6    

Бот Telegram и HTTP сервис в 1С

WEB 8.3.8 Бесплатно (free)

Настройка рабочего вебхука telegram для 1С используя IIS (Internet Information Services - встроенный в windows веб-сервер). Мой опыт.

26.01.2021    9031    solidsun    13    

Интеграция с API WB (Wildberries). Создание карточки товара (спецификации)

WEB v8 1cv8.cf ИТ-компания Россия Бесплатно (free)

Опыт интеграции с API WB (Wildberries), опыт создания карточки товара, получение токенов API WB.

18.01.2021    33683    jenyavp    59    

1С и Умный Дом. Управление голосом

WEB Интернет вещей (IIoT) 8.3.6 Бесплатно (free)

Возможно ли управление устройствами умного дома из 1С, да ещё и голосом? Можно ли без умных колонок Google Home, Alexa, Алиса и иных платформ, а также без приложений от Google, Amazon и других управлять этими устройствами? Мой ответ – ДА, можно, нужно просто иметь умное устройство, имеющее возможность работы в DIY, 1С и программу распознавания голоса и взаимодействия с 1С.

04.01.2021    2626    osivv    15    

HTML редактор/editor (Wysiwyg) для WebKit 1С (CMS, B2B), альтернатива TinyMCE и стандартному ФорматированныйДокумент

WEB Интеграция с сервисами v8 v8::УФ 1cv8.cf Бесплатно (free)

Suneditor - отличная замена HTML редактору TinyMCE (бесплатному), в публикации с открытым кодом подключим его в 1С с WebKit, скачать HTMLeditor обработку можно бесплатно.

28.12.2020    4150    SizovE    25    

1С и Умный дом

WEB Интернет вещей (IIoT) 8.3.8 Бесплатно (free)

Возможно ли управление устройствами умного дома из 1С? Можно ли, минуя сложные настройки ZigBee, Z-Wave и иных платформ, а также без приложений от Google, Amazon и других управлять этими устройства? Мой ответ – ДА, можно, нужно просто иметь умное устройство, имеющее возможность работы в DIY, ну и, естественно, 1С.

21.12.2020    3267    osivv    8