āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢ CI āļŠāļģāļŦāļĢāļąāļšāļ™āļąāļāļžāļąāļ’āļ™āļē

āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢ CI āļŠāļģāļŦāļĢāļąāļšāļ™āļąāļāļžāļąāļ’āļ™āļē

āļŦāļ™āļķāđˆāļ‡āđƒāļ™āļ›āļąāļāļŦāļēāļ—āļĩāđˆāļœāļđāđ‰āļˆāļģāļŦāļ™āđˆāļēāļĒāļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāļŦāļĨāļēāļĒāļœāļĨāļīāļ•āļ āļąāļ“āļ‘āđŒāļĄāļąāļāđ€āļœāļŠāļīāļāļ„āļ·āļ­āļāļēāļĢāļ‹āđ‰āļģāļ‹āđ‰āļ­āļ™āļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļ‚āļ­āļ‡āļ§āļīāļĻāļ§āļāļĢ - āļ™āļąāļāļžāļąāļ’āļ™āļē āļœāļđāđ‰āļ—āļ”āļŠāļ­āļš āđāļĨāļ°āļœāļđāđ‰āļ”āļđāđāļĨāļĢāļ°āļšāļšāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āļžāļ·āđ‰āļ™āļāļēāļ™ - āđƒāļ™āđ€āļāļ·āļ­āļšāļ—āļļāļāļ—āļĩāļĄ āļ™āļ­āļāļˆāļēāļāļ™āļĩāđ‰āļĒāļąāļ‡āđƒāļŠāđ‰āļāļąāļšāļ§āļīāļĻāļ§āļāļĢāļ—āļĩāđˆāļĄāļĩāļĢāļēāļ„āļēāđāļžāļ‡ - āļœāļđāđ‰āđ€āļŠāļĩāđˆāļĒāļ§āļŠāļēāļāđƒāļ™āļ”āđ‰āļēāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”

āđāļ—āļ™āļ—āļĩāđˆāļˆāļ°āļ—āļģāļŦāļ™āđ‰āļēāļ—āļĩāđˆāđ‚āļ”āļĒāļ•āļĢāļ‡āđāļĨāļ°āđƒāļŠāđ‰āļ›āļĢāļ°āļŠāļšāļāļēāļĢāļ“āđŒāđ€āļ‰āļžāļēāļ°āđƒāļ™āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ” āđ€āļĨāļ·āļ­āļāļ§āļīāļ˜āļĩāļāļēāļĢ āđ€āļĄāļ•āļĢāļīāļāļ—āļĩāđˆāđ€āļŦāļĄāļēāļ°āļŠāļĄāļ—āļĩāđˆāļŠāļļāļ” āđāļĨāļ°āđ€āļ‚āļĩāļĒāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāļ•āļēāļĄāđ‚āļ›āļĢāđ„āļŸāļĨāđŒāđ‚āļŦāļĨāļ” āļ§āļīāļĻāļ§āļāļĢāļĄāļąāļāļ•āđ‰āļ­āļ‡āļ›āļĢāļąāļšāđƒāļŠāđ‰āđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āļžāļ·āđ‰āļ™āļāļēāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ•āļąāđ‰āļ‡āđāļ•āđˆāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™ āļāļģāļŦāļ™āļ”āļ„āđˆāļēāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āđ‚āļŦāļĨāļ” āđāļĨāļ°āļāļąāļ‡ āļ•āļ™āđ€āļ­āļ‡āđƒāļ™āļĢāļ°āļšāļš CI āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāđāļĨāļ°āđ€āļœāļĒāđāļžāļĢāđˆāļĢāļēāļĒāļ‡āļēāļ™

āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļ„āđ‰āļ™āļŦāļēāļ§āļīāļ˜āļĩāđāļāđ‰āđ„āļ‚āļ›āļąāļāļŦāļēāļ‚āļ­āļ‡āļ­āļ‡āļ„āđŒāļāļĢāđ„āļ”āđ‰āđƒāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ—āļĩāđˆāđ€āļĢāļēāđƒāļŠāđ‰āļ—āļĩāđˆ Positive Technologies āđƒāļ™ āļšāļ—āļ„āļ§āļēāļĄāļ­āļ·āđˆāļ™. āđāļĨāļ°āđƒāļ™āļšāļ—āļ„āļ§āļēāļĄāļ™āļĩāđ‰ āļ‰āļąāļ™āļˆāļ°āļžāļđāļ”āļ–āļķāļ‡āļ„āļ§āļēāļĄāđ€āļ›āđ‡āļ™āđ„āļ›āđ„āļ”āđ‰āđƒāļ™āļāļēāļĢāļĢāļ§āļĄāļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āđ€āļ‚āđ‰āļēāļāļąāļšāđ„āļ›āļ›āđŒāđ„āļĨāļ™āđŒ CI āļ—āļąāđˆāļ§āđ„āļ›āđ‚āļ”āļĒāđƒāļŠāđ‰āđāļ™āļ§āļ„āļīāļ”āļ‚āļ­āļ‡ "āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āđƒāļ™āļāļēāļ™āļ°āļšāļĢāļīāļāļēāļĢ" (āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āđƒāļ™āļāļēāļ™āļ°āļšāļĢāļīāļāļēāļĢ) āļ„āļļāļ“āļˆāļ°āđ„āļ”āđ‰āđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āļ§āļīāļ˜āļĩāļāļēāļĢāđāļĨāļ°āļ­āļīāļĄāđ€āļĄāļˆāļ™āļąāļāđ€āļ—āļĩāļĒāļšāļ—āđˆāļēāļ‚āļ­āļ‡āđ‚āļŦāļĨāļ”āļ‹āļ­āļĢāđŒāļŠāļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āđƒāļ™āđ„āļ›āļ›āđŒāđ„āļĨāļ™āđŒ CI āļ§āļīāļ˜āļĩāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ‚āļŦāļĨāļ”āļ‹āļ­āļĢāđŒāļŠāļāļąāļšāđ‚āļ›āļĢāđ€āļˆāđ‡āļāļ•āđŒ CI āļ‚āļ­āļ‡āļ„āļļāļ“āđ‚āļ”āļĒāđƒāļŠāđ‰āđ€āļ—āļĄāđ€āļžāļĨāļ•āļšāļīāļĨāļ”āđŒ āđ„āļ›āļ›āđŒāđ„āļĨāļ™āđŒāļŠāļēāļ˜āļīāļ•āļĄāļĩāļĨāļąāļāļĐāļ“āļ°āļ­āļĒāđˆāļēāļ‡āđ„āļĢāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āđāļĨāļ°āļāļēāļĢāđ€āļœāļĒāđāļžāļĢāđˆāļœāļĨāļĨāļąāļžāļ˜āđŒ āļšāļ—āļ„āļ§āļēāļĄāļ™āļĩāđ‰āļ­āļēāļˆāđ€āļ›āđ‡āļ™āļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒāļŠāļģāļŦāļĢāļąāļšāļ§āļīāļĻāļ§āļāļĢāļ—āļ”āļŠāļ­āļšāļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāđāļĨāļ°āļ§āļīāļĻāļ§āļāļĢāļĢāļ°āļšāļšāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāđƒāļ™ CI āļ—āļĩāđˆāļāļģāļĨāļąāļ‡āļ„āļīāļ”āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļŠāļ–āļēāļ›āļąāļ•āļĒāļāļĢāļĢāļĄāļ‚āļ­āļ‡āļĢāļ°āļšāļšāđ‚āļŦāļĨāļ”āļ‚āļ­āļ‡āļ•āļ™

āļŠāļēāļĢāļ°āļŠāļģāļ„āļąāļāļ‚āļ­āļ‡āđāļ™āļ§āļ„āļīāļ”

āđāļ™āļ§āļ„āļīāļ”āļ‚āļ­āļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢāđāļŠāļ”āļ‡āļ–āļķāļ‡āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āđƒāļ™āļāļēāļĢāļĢāļ§āļĄāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āđ‚āļŦāļĨāļ” Apache JMeter, Yandex.Tank āđāļĨāļ°āđ€āļŸāļĢāļĄāđ€āļ§āļīāļĢāđŒāļāļ‚āļ­āļ‡āļ„āļļāļ“āđ€āļ­āļ‡āđ€āļ‚āđ‰āļēāļāļąāļšāļĢāļ°āļšāļšāļāļēāļĢāļĢāļ§āļĄāļ­āļĒāđˆāļēāļ‡āļ•āđˆāļ­āđ€āļ™āļ·āđˆāļ­āļ‡āļ•āļēāļĄāļ­āļģāđ€āļ āļ­āđƒāļˆ āļāļēāļĢāļŠāļēāļ˜āļīāļ•āļˆāļ°āđƒāļŠāđ‰āļŠāļģāļŦāļĢāļąāļš GitLab CI āđāļ•āđˆāļŦāļĨāļąāļāļāļēāļĢāļ™āļąāđ‰āļ™āđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļ™āļāļąāļšāļĢāļ°āļšāļš CI āļ—āļąāđ‰āļ‡āļŦāļĄāļ”

Load Testing as a Service āđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢāđāļšāļšāļĢāļ§āļĄāļĻāļđāļ™āļĒāđŒāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ” āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļāļēāļĢāđ‚āļŦāļĨāļ”āļˆāļ°āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđƒāļ™āļāļĨāļļāđˆāļĄāļ•āļąāļ§āđāļ—āļ™āđ€āļ‰āļžāļēāļ° āļœāļĨāļĨāļąāļžāļ˜āđŒāļˆāļ°āļ–āļđāļāđ€āļœāļĒāđāļžāļĢāđˆāđ‚āļ”āļĒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāđƒāļ™ GitLab Pages, Influx DB āđāļĨāļ° Grafana āļŦāļĢāļ·āļ­āđƒāļ™āļĢāļ°āļšāļšāļĢāļēāļĒāļ‡āļēāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš (TestRail, ReportPortal āđ€āļ›āđ‡āļ™āļ•āđ‰āļ™) āļāļēāļĢāļ—āļģāļ‡āļēāļ™āļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāđāļĨāļ°āļāļēāļĢāļ›āļĢāļąāļšāļ‚āļ™āļēāļ”āļ™āļąāđ‰āļ™āļ–āļđāļāļ™āļģāļĄāļēāđƒāļŠāđ‰āļ­āļĒāđˆāļēāļ‡āļ‡āđˆāļēāļĒāļ—āļĩāđˆāļŠāļļāļ”āđ€āļ—āđˆāļēāļ—āļĩāđˆāļˆāļ°āđ€āļ›āđ‡āļ™āđ„āļ›āđ„āļ”āđ‰ - āļœāđˆāļēāļ™āļāļēāļĢāđ€āļžāļīāđˆāļĄāđāļĨāļ°āļāļēāļĢāļāļģāļŦāļ™āļ”āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāđƒāļ™āđ‚āļ„āļĢāļ‡āļāļēāļĢ GitLab CI āļ‚āļ­āļ‡āđ€āļ—āļĄāđ€āļžāļĨāļ• gitlab-ci.yml āļ›āļāļ•āļī

āļ‚āđ‰āļ­āļ”āļĩāļ‚āļ­āļ‡āđāļ™āļ§āļ—āļēāļ‡āļ™āļĩāđ‰āļ„āļ·āļ­āđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āļžāļ·āđ‰āļ™āļāļēāļ™ CI āļ—āļąāđ‰āļ‡āļŦāļĄāļ” āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ” āļĢāļđāļ›āļ āļēāļžāļ™āļąāļāđ€āļ—āļĩāļĒāļšāļ—āđˆāļēāļ‚āļ­āļ‡āđāļŦāļĨāđˆāļ‡āđ‚āļŦāļĨāļ” āļ—āđˆāļ­āļ—āļ”āļŠāļ­āļš āđāļĨāļ°āļĢāļēāļĒāļ‡āļēāļ™āļāļēāļĢāđ€āļœāļĒāđāļžāļĢāđˆāļˆāļ°āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļ”āļđāđāļĨāđ‚āļ”āļĒāđāļœāļ™āļāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāļŠāđˆāļ§āļ™āļāļĨāļēāļ‡ (āļ§āļīāļĻāļ§āļāļĢ DevOps) āđƒāļ™āļ‚āļ“āļ°āļ—āļĩāđˆāļ§āļīāļĻāļ§āļāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āļŠāļēāļĄāļēāļĢāļ–āļĄāļļāđˆāļ‡āđ€āļ™āđ‰āļ™āđ„āļ›āļ—āļĩāđˆāļāļēāļĢāļžāļąāļ’āļ™āļēāļāļēāļĢāļ—āļ”āļŠāļ­āļš āđāļĨāļ°āļāļēāļĢāļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒāļœāļĨāļĨāļąāļžāļ˜āđŒāđ‚āļ”āļĒāđ„āļĄāđˆāđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļāļąāļšāļ›āļąāļāļŦāļēāļ”āđ‰āļēāļ™āđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āļžāļ·āđ‰āļ™āļāļēāļ™

āđ€āļžāļ·āđˆāļ­āļ„āļ§āļēāļĄāđ€āļĢāļĩāļĒāļšāļ‡āđˆāļēāļĒāļ‚āļ­āļ‡āļ„āļģāļ­āļ˜āļīāļšāļēāļĒ āđ€āļĢāļēāļˆāļ°āļ–āļ·āļ­āļ§āđˆāļēāđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāļŦāļĢāļ·āļ­āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāļ āļēāļĒāđƒāļ•āđ‰āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āđāļĨāļ°āļāļģāļŦāļ™āļ”āļ„āđˆāļēāļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļēāđāļĨāđ‰āļ§ (āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āļŠāļ„āļĢāļīāļ›āļ•āđŒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāđƒāļ™ Python, SaltStack, Ansible āđāļĨāļ°āļ­āļ·āđˆāļ™āđ† āļŠāļģāļŦāļĢāļąāļšāļŠāļīāđˆāļ‡āļ™āļĩāđ‰) āļˆāļēāļāļ™āļąāđ‰āļ™āđāļ™āļ§āļ„āļīāļ”āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ‚āļ­āļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āđƒāļ™āļāļēāļ™āļ°āļšāļĢāļīāļāļēāļĢāļˆāļ°āđāļšāđˆāļ‡āļ­āļ­āļāđ€āļ›āđ‡āļ™āļŠāļēāļĄāļ‚āļąāđ‰āļ™āļ•āļ­āļ™: āļāļēāļĢāļˆāļąāļ”āļ—āļģ āļāļēāļĢāļ—āļ”āļŠāļ­āļš āļāļēāļĢāļ•āļĩāļžāļīāļĄāļžāđŒāļĢāļēāļĒāļ‡āļēāļ™. āļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄāđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāđ„āļ”āļ­āļ°āđāļāļĢāļĄ (āļĢāļđāļ›āļ āļēāļžāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļŠāļēāļĄāļēāļĢāļ–āļ„āļĨāļīāļāđ„āļ”āđ‰):

āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢ CI āļŠāļģāļŦāļĢāļąāļšāļ™āļąāļāļžāļąāļ’āļ™āļē

āđāļ™āļ§āļ„āļīāļ”āđāļĨāļ°āļ„āļģāļˆāļģāļāļąāļ”āļ„āļ§āļēāļĄāļžāļ·āđ‰āļ™āļāļēāļ™āđƒāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”

āđ€āļĄāļ·āđˆāļ­āļ—āļģāļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ” āđ€āļĢāļēāļžāļĒāļēāļĒāļēāļĄāļ›āļāļīāļšāļąāļ•āļīāļ•āļēāļĄ āļĄāļēāļ•āļĢāļāļēāļ™āđāļĨāļ°āļ§āļīāļ˜āļĩāļāļēāļĢāļ‚āļ­āļ‡ ISTQBāđƒāļŠāđ‰āļ„āļģāļĻāļąāļžāļ—āđŒāļ—āļĩāđˆāđ€āļŦāļĄāļēāļ°āļŠāļĄāđāļĨāļ°āđ€āļĄāļ•āļĢāļīāļāļ—āļĩāđˆāđāļ™āļ°āļ™āļģ āļ‰āļąāļ™āļˆāļ°āđƒāļŦāđ‰āļĢāļēāļĒāļāļēāļĢāļŠāļąāđ‰āļ™ āđ† āļ‚āļ­āļ‡āđāļ™āļ§āļ„āļīāļ”āļŦāļĨāļąāļāđāļĨāļ°āļ„āļģāļˆāļģāļāļąāļ”āļ„āļ§āļēāļĄāđƒāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”

āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ” - āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āđ€āļŠāļĄāļ·āļ­āļ™āļ—āļĩāđˆāļˆāļ°āđ€āļ›āļīāļ”āļ•āļąāļ§āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™ - āđāļŦāļĨāđˆāļ‡āđ‚āļŦāļĨāļ” (Apache JMeter, Yandex.Tank āļŦāļĢāļ·āļ­āđ‚āļĄāļ”āļđāļĨāđ‚āļŦāļĨāļ”āļ—āļĩāđˆāđ€āļ‚āļĩāļĒāļ™āđ€āļ­āļ‡)

āđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāļāļēāļĢāļ—āļ”āļŠāļ­āļš (āđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒ) - āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāļŦāļĢāļ·āļ­āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļ—āļĩāđˆāļ•āļīāļ”āļ•āļąāđ‰āļ‡āļšāļ™āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāļ—āļĩāđˆāļˆāļ°āļ–āļđāļāđ‚āļŦāļĨāļ”

āļŠāļ–āļēāļ™āļāļēāļĢāļ“āđŒāļ—āļ”āļŠāļ­āļš (āļāļĢāļ“āļĩāļ—āļ”āļŠāļ­āļš) - āļŠāļļāļ”āļ‚āļ­āļ‡āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļ—āļĩāđˆāļāļģāļŦāļ™āļ”āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒ: āļāļēāļĢāļāļĢāļ°āļ—āļģāļ‚āļ­āļ‡āļœāļđāđ‰āđƒāļŠāđ‰āđāļĨāļ°āļ›āļāļīāļāļīāļĢāļīāļĒāļēāļ—āļĩāđˆāļ„āļēāļ”āļŦāļ§āļąāļ‡āļ•āđˆāļ­āļāļēāļĢāļāļĢāļ°āļ—āļģāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰ āļžāļĢāđ‰āļ­āļĄāļ„āļģāļ‚āļ­āđāļĨāļ°āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡āļ‚āļ­āļ‡āđ€āļ„āļĢāļ·āļ­āļ‚āđˆāļēāļĒāļ„āļ‡āļ—āļĩāđˆ āļ‚āļķāđ‰āļ™āļ­āļĒāļđāđˆāļāļąāļšāļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāļ—āļĩāđˆāļĢāļ°āļšāļļ

āđ‚āļ›āļĢāđ„āļŸāļĨāđŒāļŦāļĢāļ·āļ­āđāļœāļ™āļāļēāļĢāđ‚āļŦāļĨāļ” (āđ‚āļ›āļĢāđ„āļŸāļĨāđŒ) - āđƒāļ™ āļ§āļīāļ˜āļĩāļāļēāļĢāļ‚āļ­āļ‡ ISTQB (āļŠāđˆāļ§āļ™ 4.2.4 āļŦāļ™āđ‰āļē 43) āđ‚āļŦāļĨāļ”āđ‚āļ›āļĢāđ„āļŸāļĨāđŒāļāļģāļŦāļ™āļ”āđ€āļĄāļ•āļĢāļīāļāļ—āļĩāđˆāļŠāļģāļ„āļąāļāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļ‰āļžāļēāļ°āđāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāđ‚āļŦāļĨāļ”āļĢāļ°āļŦāļ§āđˆāļēāļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļš āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļ”āļđāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ‚āļ›āļĢāđ„āļŸāļĨāđŒāđ„āļ”āđ‰āđƒāļ™āļĢāļđāļ›

āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢ CI āļŠāļģāļŦāļĢāļąāļšāļ™āļąāļāļžāļąāļ’āļ™āļē

āļ—āļ”āļŠāļ­āļš — āļŠāļ„āļĢāļīāļ›āļ•āđŒāļ—āļĩāđˆāļĄāļĩāļŠāļļāļ”āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ„āļ§āđ‰āļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļē

āđāļœāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš (āđāļœāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš) - āļŠāļļāļ”āļ—āļ”āļŠāļ­āļšāđāļĨāļ°āđ‚āļŦāļĨāļ”āđ‚āļ›āļĢāđ„āļŸāļĨāđŒ

Testran (āđ€āļ—āļŠāļĢāļąāļ™) - āļāļēāļĢāļ§āļ™āļ‹āđ‰āļģāļŦāļ™āļķāđˆāļ‡āļĢāļ­āļšāļ‚āļ­āļ‡āļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļŦāļ™āļķāđˆāļ‡āļ„āļĢāļąāđ‰āļ‡āļ”āđ‰āļ§āļĒāļŠāļ–āļēāļ™āļāļēāļĢāļ“āđŒāļāļēāļĢāđ‚āļŦāļĨāļ”āļ—āļĩāđˆāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ­āļĒāđˆāļēāļ‡āļŠāļĄāļšāļđāļĢāļ“āđŒāđāļĨāļ°āļĢāļēāļĒāļ‡āļēāļ™āļ—āļĩāđˆāđ„āļ”āđ‰āļĢāļąāļš

āļ„āļģāļ‚āļ­āđ€āļ„āļĢāļ·āļ­āļ‚āđˆāļēāļĒ (āļ„āļģāļ‚āļ­) — āļ„āļģāļ‚āļ­ HTTP āļ—āļĩāđˆāļŠāđˆāļ‡āļˆāļēāļāļ•āļąāļ§āđāļ—āļ™āđ„āļ›āļĒāļąāļ‡āđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒ

āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡āļ‚āļ­āļ‡āđ€āļ„āļĢāļ·āļ­āļ‚āđˆāļēāļĒ (āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡) — āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡ HTTP āļ—āļĩāđˆāļŠāđˆāļ‡āļˆāļēāļāđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāđ„āļ›āļĒāļąāļ‡āļ•āļąāļ§āđāļ—āļ™
āļĢāļŦāļąāļŠāļ•āļ­āļšāļāļĨāļąāļš HTTP (āļŠāļ–āļēāļ™āļ°āļāļēāļĢāļ•āļ­āļšāļāļĨāļąāļš HTTP) - āļĢāļŦāļąāļŠāļ•āļ­āļšāļāļĨāļąāļšāļĄāļēāļ•āļĢāļāļēāļ™āļˆāļēāļāđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒ
āļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄāđ€āļ›āđ‡āļ™āļ§āļ‡āļˆāļĢāļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡āļ„āļģāļ‚āļ­āļ—āļĩāđˆāļŠāļĄāļšāļđāļĢāļ“āđŒ āļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄāļˆāļ°āļ™āļąāļšāļˆāļēāļāļˆāļļāļ”āđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ‚āļ­āļ‡āļāļēāļĢāļŠāđˆāļ‡āļ„āļģāļ‚āļ­ (āļ„āļģāļ‚āļ­) āđ„āļ›āļˆāļ™āļ–āļķāļ‡āļāļēāļĢāđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡ (āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡)

āļŠāļ–āļēāļ™āļ°āļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄ - āđ€āļ›āđ‡āļ™āđ„āļ›āđ„āļ”āđ‰āđ„āļŦāļĄāļ—āļĩāđˆāļˆāļ°āđ€āļŠāļĢāđ‡āļˆāļŠāļīāđ‰āļ™āļĢāļ­āļšāļāļēāļĢāļ•āļ­āļšāļāļĨāļąāļšāļ„āļģāļ‚āļ­ āļŦāļēāļāļĄāļĩāļ‚āđ‰āļ­āļœāļīāļ”āļžāļĨāļēāļ”āđƒāļ”āđ† āđƒāļ™āļĢāļ­āļšāļ™āļĩāđ‰ āļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļˆāļ°āļ–āļ·āļ­āļ§āđˆāļēāđ„āļĄāđˆāļŠāļģāđ€āļĢāđ‡āļˆ

āđ€āļ§āļĨāļēāļ•āļ­āļšāļŠāļ™āļ­āļ‡ (āđ€āļ§āļĨāļēāđāļāļ‡) - āđ€āļ§āļĨāļēāļ•āļąāđ‰āļ‡āđāļ•āđˆāļŠāļīāđ‰āļ™āļŠāļļāļ”āļāļēāļĢāļŠāđˆāļ‡āļ„āļģāļ‚āļ­ (āļ„āļģāļ‚āļ­) āļˆāļ™āļ–āļķāļ‡āļˆāļļāļ”āđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ‚āļ­āļ‡āļāļēāļĢāļ•āļ­āļšāļāļĨāļąāļš (āļ•āļ­āļšāļāļĨāļąāļš)

āđ‚āļŦāļĨāļ”āđ€āļĄāļ•āļĢāļīāļ — āļĨāļąāļāļĐāļ“āļ°āļ‚āļ­āļ‡āļšāļĢāļīāļāļēāļĢāļ—āļĩāđˆāđ‚āļŦāļĨāļ”āđāļĨāļ°āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”āļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđƒāļ™āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”

āđ€āļĄāļ•āļĢāļīāļāļžāļ·āđ‰āļ™āļāļēāļ™āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ§āļąāļ”āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāđ‚āļŦāļĨāļ”

āļšāļēāļ‡āļŠāđˆāļ§āļ™āļ—āļĩāđˆāđƒāļŠāđ‰āļšāđˆāļ­āļĒāļ—āļĩāđˆāļŠāļļāļ”āđāļĨāļ°āđāļ™āļ°āļ™āļģāđƒāļ™āļ§āļīāļ˜āļĩāļāļēāļĢ āđ„āļ­āđ€āļ­āļŠāļ„āļīāļ§āļšāļĩ (āļ™. 36, 52) āđ€āļĄāļ•āļĢāļīāļāđāļŠāļ”āļ‡āđƒāļ™āļ•āļēāļĢāļēāļ‡āļ”āđ‰āļēāļ™āļĨāđˆāļēāļ‡ āđ€āļĄāļ•āļĢāļīāļāļ—āļĩāđˆāļ„āļĨāđ‰āļēāļĒāļāļąāļ™āļŠāļģāļŦāļĢāļąāļšāļ•āļąāļ§āđāļ—āļ™āđāļĨāļ°āđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāđāļŠāļ”āļ‡āļ­āļĒāļđāđˆāđƒāļ™āļšāļĢāļĢāļ—āļąāļ”āđ€āļ”āļĩāļĒāļ§āļāļąāļ™

āđ€āļĄāļ•āļĢāļīāļāļŠāļģāļŦāļĢāļąāļšāļ•āļąāļ§āđāļ—āļ™āļāļēāļĢāđ‚āļŦāļĨāļ”
āđ€āļĄāļ•āļĢāļīāļāļ‚āļ­āļ‡āļĢāļ°āļšāļšāđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāļŦāļĢāļ·āļ­āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļ—āļĩāđˆāļāļģāļĨāļąāļ‡āļ—āļ”āļŠāļ­āļšāļ āļēāļĒāđƒāļ•āđ‰āđ‚āļŦāļĨāļ”

āļˆāļģāļ™āļ§āļ™  āļ‹āļĩāļžāļĩāļĒāļđ āđāļĨāļ°āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģ āđāļĢāļĄ,
āļ”āļīāļŠāļāđŒ - āļĨāļąāļāļĐāļ“āļ° "āđ€āļŦāļĨāđ‡āļ" āļ‚āļ­āļ‡āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”
āļ‹āļĩāļžāļĩāļĒāļđ, āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģ āļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āļ”āļīāļŠāļāđŒ - āļžāļĨāļ§āļąāļ•āļ‚āļ­āļ‡ CPU, āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģāđāļĨāļ°āļāļēāļĢāđ‚āļŦāļĨāļ”āļ”āļīāļŠāļāđŒ
āļ­āļĒāļđāđˆāđƒāļ™āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš āđ‚āļ”āļĒāļ›āļāļ•āļīāļˆāļ°āļ§āļąāļ”āđ€āļ›āđ‡āļ™āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āļ•āđŒāļ‚āļ­āļ‡
āļ„āđˆāļēāļŠāļđāļ‡āļŠāļļāļ”āļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆ

āļ›āļĢāļīāļĄāļēāļ“āļ‡āļēāļ™āđ€āļ„āļĢāļ·āļ­āļ‚āđˆāļēāļĒ (āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”) - āļ›āļĢāļīāļĄāļēāļ“āļ‡āļēāļ™
āļ­āļīāļ™āđ€āļ—āļ­āļĢāđŒāđ€āļŸāļ‹āđ€āļ„āļĢāļ·āļ­āļ‚āđˆāļēāļĒāļšāļ™āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒ
āļ•āļģāđāļŦāļ™āđˆāļ‡āđ‚āļŦāļĨāļ”āđ€āļ­āđ€āļˆāļ™āļ•āđŒāļ–āļđāļāļ•āļīāļ”āļ•āļąāđ‰āļ‡
āđ‚āļ”āļĒāļ›āļāļ•āļīāļˆāļ°āļ§āļąāļ”āđ€āļ›āđ‡āļ™āđ„āļšāļ•āđŒāļ•āđˆāļ­āļ§āļīāļ™āļēāļ—āļĩ (bps)
āļ›āļĢāļīāļĄāļēāļ“āļ‡āļēāļ™āđ€āļ„āļĢāļ·āļ­āļ‚āđˆāļēāļĒ(āļ•āļēāļĄāđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒ) - āđāļšāļ™āļ”āđŒāļ§āļīāļ”āļ—āđŒāļ­āļīāļ™āđ€āļ—āļ­āļĢāđŒāđ€āļŸāļ‹āđ€āļ„āļĢāļ·āļ­āļ‚āđˆāļēāļĒ
āļšāļ™āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒ āđ‚āļ”āļĒāļ›āļāļ•āļīāļˆāļ°āļ§āļąāļ”āđ€āļ›āđ‡āļ™āđ„āļšāļ•āđŒāļ•āđˆāļ­āļ§āļīāļ™āļēāļ—āļĩ (bps)

āļœāļđāđ‰āđƒāļŠāđ‰āđ€āļŠāļĄāļ·āļ­āļ™āļˆāļĢāļīāļ‡- āļˆāļģāļ™āļ§āļ™āļœāļđāđ‰āđƒāļŠāđ‰āđ€āļŠāļĄāļ·āļ­āļ™
āļāļēāļĢāđƒāļŠāđ‰āļŠāļ–āļēāļ™āļāļēāļĢāļ“āđŒāļāļēāļĢāđ‚āļŦāļĨāļ”āđāļĨāļ°
āđ€āļĨāļĩāļĒāļ™āđāļšāļšāļāļēāļĢāļāļĢāļ°āļ—āļģāļ‚āļ­āļ‡āļœāļđāđ‰āđƒāļŠāđ‰āļˆāļĢāļīāļ‡
āļŠāļ–āļēāļ™āļ°āļœāļđāđ‰āđƒāļŠāđ‰āđ€āļŠāļĄāļ·āļ­āļ™, āļœāđˆāļēāļ™/āđ„āļĄāđˆāļœāđˆāļēāļ™/āļĢāļ§āļĄ — āļˆāļģāļ™āļ§āļ™āļ„āļĢāļąāđ‰āļ‡āļ—āļĩāđˆāļŠāļģāđ€āļĢāđ‡āļˆ āđāļĨāļ°
āļŠāļ–āļēāļ™āļ°āļ—āļĩāđˆāđ„āļĄāđˆāļŠāļģāđ€āļĢāđ‡āļˆāļ‚āļ­āļ‡āļœāļđāđ‰āđƒāļŠāđ‰āđ€āļŠāļĄāļ·āļ­āļ™
āļŠāļģāļŦāļĢāļąāļšāļŠāļ–āļēāļ™āļāļēāļĢāļ“āđŒāļāļēāļĢāđ‚āļŦāļĨāļ” āļ•āļĨāļ­āļ”āļˆāļ™āļˆāļģāļ™āļ§āļ™āļ—āļąāđ‰āļ‡āļŦāļĄāļ”

āđ‚āļ”āļĒāļ—āļąāđˆāļ§āđ„āļ›āļ„āļēāļ”āļ§āđˆāļēāļœāļđāđ‰āđƒāļŠāđ‰āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļˆāļ°āļŠāļēāļĄāļēāļĢāļ–āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđƒāļŦāđ‰āđ€āļŠāļĢāđ‡āļˆāļŠāļīāđ‰āļ™āđ„āļ”āđ‰
āļ‡āļēāļ™āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ‚āļ­āļ‡āļ„āļļāļ“āļ—āļĩāđˆāļĢāļ°āļšāļļāđƒāļ™āđ‚āļŦāļĨāļ”āđ‚āļ›āļĢāđ„āļŸāļĨāđŒ
āļ‚āđ‰āļ­āļœāļīāļ”āļžāļĨāļēāļ”āđƒāļ” āđ† āļˆāļ°āļŦāļĄāļēāļĒāļ„āļ§āļēāļĄāļ§āđˆāļēāļœāļđāđ‰āđƒāļŠāđ‰āļˆāļĢāļīāļ‡āļˆāļ°āđ„āļĄāđˆāļŠāļēāļĄāļēāļĢāļ–
āđāļāđ‰āļ›āļąāļāļŦāļēāļ‚āļ­āļ‡āļ„āļļāļ“āđ€āļĄāļ·āđˆāļ­āļ—āļģāļ‡āļēāļ™āļāļąāļšāļĢāļ°āļšāļš

āļ„āļģāļ‚āļ­āļ•āđˆāļ­āļ§āļīāļ™āļēāļ—āļĩ (āļ™āļēāļ—āļĩ)- āļˆāļģāļ™āļ§āļ™āļ„āļģāļ‚āļ­āđ€āļ„āļĢāļ·āļ­āļ‚āđˆāļēāļĒāļ•āđˆāļ­āļ§āļīāļ™āļēāļ—āļĩ (āļŦāļĢāļ·āļ­āļ™āļēāļ—āļĩ)

āļ„āļļāļ“āļĨāļąāļāļĐāļ“āļ°āļ—āļĩāđˆāļŠāļģāļ„āļąāļāļ‚āļ­āļ‡āđ€āļ­āđ€āļˆāļ™āļ•āđŒāļāļēāļĢāđ‚āļŦāļĨāļ”āļ„āļ·āļ­āļˆāļģāļ™āļ§āļ™āļ„āļģāļ‚āļ­āļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āļŠāļĢāđ‰āļēāļ‡āđ„āļ”āđ‰
āļ­āļąāļ™āļ—āļĩāđˆāļˆāļĢāļīāļ‡āđāļĨāđ‰āļ§ āļ™āļĩāđˆāđ€āļ›āđ‡āļ™āļāļēāļĢāđ€āļĨāļĩāļĒāļ™āđāļšāļšāļāļēāļĢāđ€āļ‚āđ‰āļēāļ–āļķāļ‡āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āđ‚āļ”āļĒāļœāļđāđ‰āđƒāļŠāđ‰āđ€āļŠāļĄāļ·āļ­āļ™
āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡āļ•āđˆāļ­āļ§āļīāļ™āļēāļ—āļĩ (āļ™āļēāļ—āļĩ)
- āļˆāļģāļ™āļ§āļ™āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡āļ‚āļ­āļ‡āđ€āļ„āļĢāļ·āļ­āļ‚āđˆāļēāļĒāļ•āđˆāļ­āļ§āļīāļ™āļēāļ—āļĩ (āļŦāļĢāļ·āļ­āļ™āļēāļ—āļĩ)

āļĨāļąāļāļĐāļ“āļ°āļŠāļģāļ„āļąāļāļ‚āļ­āļ‡āļšāļĢāļīāļāļēāļĢāđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒ: āđ€āļ—āđˆāļēāđ„āļŦāļĢāđˆ
āļŠāļĢāđ‰āļēāļ‡āđāļĨāļ°āļŠāđˆāļ‡āļāļēāļĢāļ•āļ­āļšāļ„āļģāļ–āļēāļĄāļ”āđ‰āļ§āļĒ
āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”

āļŠāļ–āļēāļ™āļ°āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡ HTTP— āļˆāļģāļ™āļ§āļ™āļĢāļŦāļąāļŠāļ•āļ­āļšāļāļĨāļąāļšāļ—āļĩāđˆāđāļ•āļāļ•āđˆāļēāļ‡āļāļąāļ™
āļˆāļēāļāđāļ­āđ‡āļžāļžāļĨāļīāđ€āļ„āļŠāļąāļ™āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāļ—āļĩāđˆāđ„āļ”āđ‰āļĢāļąāļšāļˆāļēāļāđ€āļ­āđ€āļˆāļ™āļ•āđŒāļāļēāļĢāđ‚āļŦāļĨāļ”
āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ€āļŠāđˆāļ™ 200 OK āļŦāļĄāļēāļĒāļ–āļķāļ‡āļāļēāļĢāđ‚āļ—āļĢāļŠāļģāđ€āļĢāđ‡āļˆ
āđāļĨāļ° 404 - āđ„āļĄāđˆāļžāļšāļ—āļĢāļąāļžāļĒāļēāļāļĢ

āļ„āļ§āļēāļĄāđāļ­āļšāđāļāļ‡ (āđ€āļ§āļĨāļēāļ•āļ­āļšāļŠāļ™āļ­āļ‡) - āđ€āļ§āļĨāļēāļˆāļēāļāļˆāļļāļ”āļŠāļīāđ‰āļ™āļŠāļļāļ”
āļŠāđˆāļ‡āļ„āļģāļ‚āļ­ (āļ„āļģāļ‚āļ­) āļāđˆāļ­āļ™āđ€āļĢāļīāđˆāļĄāļĢāļąāļšāļāļēāļĢāļ•āļ­āļšāļāļĨāļąāļš (āļ•āļ­āļšāļāļĨāļąāļš)
āđ‚āļ”āļĒāļ›āļāļ•āļīāļˆāļ°āļ§āļąāļ”āđ€āļ›āđ‡āļ™āļĄāļīāļĨāļĨāļīāļ§āļīāļ™āļēāļ—āļĩ (ms)

āđ€āļ§āļĨāļēāļ•āļ­āļšāļŠāļ™āļ­āļ‡āļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄâ€” āđ€āļ§āļĨāļēāļ‚āļ­āļ‡āļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄāđ€āļ•āđ‡āļĄāļĢāļđāļ›āđāļšāļšāļŦāļ™āļķāđˆāļ‡āļ„āļĢāļąāđ‰āļ‡
āđ€āļŠāļĢāđ‡āļˆāļŠāļīāđ‰āļ™āļĢāļ­āļšāļāļēāļĢāļ•āļ­āļšāļāļĨāļąāļšāļ„āļģāļ‚āļ­
āļ™āļĩāđˆāļ„āļ·āļ­āđ€āļ§āļĨāļēāļ•āļąāđ‰āļ‡āđāļ•āđˆāđ€āļĢāļīāđˆāļĄāļŠāđˆāļ‡āļ„āļģāļ‚āļ­ (āļ„āļģāļ‚āļ­)
āļˆāļ™āļāļ§āđˆāļēāļˆāļ°āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡ (response) āđ€āļŠāļĢāđ‡āļˆāļŠāļīāđ‰āļ™

āđ€āļ§āļĨāļēāđƒāļ™āļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄāļŠāļēāļĄāļēāļĢāļ–āļ§āļąāļ”āđ€āļ›āđ‡āļ™āļ§āļīāļ™āļēāļ—āļĩ (āļŦāļĢāļ·āļ­āļ™āļēāļ—āļĩ)
āđƒāļ™āļŦāļĨāļēāļĒāļ§āļīāļ˜āļĩ: āļžāļīāļˆāļēāļĢāļ“āļēāļ‚āļąāđ‰āļ™āļ•āđˆāļģ
āļŠāļđāļ‡āļŠāļļāļ” āļ„āđˆāļēāđ€āļ‰āļĨāļĩāđˆāļĒ āđāļĨāļ°āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ€āļŠāđˆāļ™ āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āđ„āļ—āļĨāđŒāļ—āļĩāđˆ 90
āļāļēāļĢāļ­āđˆāļēāļ™āļ„āđˆāļēāļ•āđˆāļģāļŠāļļāļ”āđāļĨāļ°āļŠāļđāļ‡āļŠāļļāļ”āļ™āļąāđ‰āļ™āļĢāļļāļ™āđāļĢāļ‡āļĄāļēāļ
āļŠāļ–āļēāļ™āļ°āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ‚āļ­āļ‡āļĢāļ°āļšāļš
āđ€āļ›āļ­āļĢāđŒāđ€āļ‹āđ‡āļ™āđ„āļ—āļĨāđŒāļ—āļĩāđˆ XNUMX āđ€āļ›āđ‡āļ™āļ„āđˆāļēāļ—āļĩāđˆāđƒāļŠāđ‰āļšāđˆāļ­āļĒāļ—āļĩāđˆāļŠāļļāļ”
āļ”āļąāļ‡āļ—āļĩāđˆāđāļŠāļ”āļ‡āđƒāļŦāđ‰āļœāļđāđ‰āđƒāļŠāđ‰āļŠāđˆāļ§āļ™āđƒāļŦāļāđˆāđ€āļŦāđ‡āļ™āļ§āđˆāļē
āļ—āļģāļ‡āļēāļ™āļ­āļĒāđˆāļēāļ‡āļŠāļ°āļ”āļ§āļāļŠāļšāļēāļĒāļ—āļĩāđˆāđ€āļāļ“āļ‘āđŒāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ‚āļ­āļ‡āļĢāļ°āļšāļš

āļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄāļ•āđˆāļ­āļ§āļīāļ™āļēāļ—āļĩ (āļ™āļēāļ—āļĩ) - āļˆāļģāļ™āļ§āļ™āļ—āļĩāđˆāļŠāļĄāļšāļđāļĢāļ“āđŒ
āļ˜āļļāļĢāļāļĢāļĢāļĄāļ•āđˆāļ­āļ§āļīāļ™āļēāļ—āļĩ (āļ™āļēāļ—āļĩ)
āļ™āļąāđˆāļ™āļ„āļ·āļ­āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļŠāļēāļĄāļēāļĢāļ–āļĒāļ­āļĄāļĢāļąāļšāđ„āļ”āđ‰āļĄāļēāļāļ™āđ‰āļ­āļĒāđ€āļžāļĩāļĒāļ‡āđƒāļ” āđāļĨāļ°
āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ•āļēāļĄāļ„āļģāļ‚āļ­āđāļĨāļ°āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡āļ›āļąāļāļŦāļē
āđƒāļ™āļ„āļ§āļēāļĄāđ€āļ›āđ‡āļ™āļˆāļĢāļīāļ‡āļ™āļĩāđˆāļ„āļ·āļ­āļ›āļĢāļīāļĄāļēāļ“āļ‡āļēāļ™āļ‚āļ­āļ‡āļĢāļ°āļšāļš

āļŠāļ–āļēāļ™āļ°āļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄ , āļœāđˆāļēāļ™ / āđ„āļĄāđˆāļœāđˆāļēāļ™ / āļĢāļ§āļĄ - āļˆāļģāļ™āļ§āļ™
āļŠāļģāđ€āļĢāđ‡āļˆ āđ„āļĄāđˆāļŠāļģāđ€āļĢāđ‡āļˆ āđāļĨāļ°āļˆāļģāļ™āļ§āļ™āļ˜āļļāļĢāļāļĢāļĢāļĄāļ—āļąāđ‰āļ‡āļŦāļĄāļ”

āļŠāļģāļŦāļĢāļąāļšāļœāļđāđ‰āđƒāļŠāđ‰āļˆāļĢāļīāļ‡āđ„āļĄāđˆāļŠāļģāđ€āļĢāđ‡āļˆ
āļāļēāļĢāļ—āļģāļ˜āļļāļĢāļāļĢāļĢāļĄāļˆāļ°āļŦāļĄāļēāļĒāļ–āļķāļ‡
āđ„āļĄāđˆāļŠāļēāļĄāļēāļĢāļ–āļ—āļģāļ‡āļēāļ™āļāļąāļšāļĢāļ°āļšāļšāļ āļēāļĒāđƒāļ•āđ‰āđ‚āļŦāļĨāļ”

āđ‚āļŦāļĨāļ”āđ„āļ”āļ­āļ°āđāļāļĢāļĄāđāļœāļ™āļœāļąāļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļš

āđāļ™āļ§āļ„āļīāļ”āļ‚āļ­āļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āļ™āļąāđ‰āļ™āļ‡āđˆāļēāļĒāļĄāļēāļ āđāļĨāļ°āļ›āļĢāļ°āļāļ­āļšāļ”āđ‰āļ§āļĒāļŠāļēāļĄāļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļŦāļĨāļąāļ āļ‹āļķāđˆāļ‡āļ‰āļąāļ™āđ„āļ”āđ‰āļāļĨāđˆāļēāļ§āļ–āļķāļ‡āđāļĨāđ‰āļ§: āđ€āļ•āļĢāļĩāļĒāļĄ-āļ—āļ”āļŠāļ­āļš-āļĢāļēāļĒāļ‡āļēāļ™āļ™āļąāđˆāļ™āļ„āļ·āļ­ āļāļēāļĢāđ€āļ•āļĢāļĩāļĒāļĄāđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāļāļēāļĢāļ—āļ”āļŠāļ­āļšāđāļĨāļ°āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāļŠāļģāļŦāļĢāļąāļšāđāļŦāļĨāđˆāļ‡āđ‚āļŦāļĨāļ” āļˆāļēāļāļ™āļąāđ‰āļ™āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ” āđāļĨāļ°āđƒāļ™āļ•āļ­āļ™āļ—āđ‰āļēāļĒ āļŠāļĢāđ‰āļēāļ‡āđāļĨāļ°āđ€āļœāļĒāđāļžāļĢāđˆāļĢāļēāļĒāļ‡āļēāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš

āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢ CI āļŠāļģāļŦāļĢāļąāļšāļ™āļąāļāļžāļąāļ’āļ™āļē

āļŦāļĄāļēāļĒāđ€āļŦāļ•āļļāđāļœāļ™āļœāļąāļ‡:

  • QA.Tester āđ€āļ›āđ‡āļ™āļœāļđāđ‰āđ€āļŠāļĩāđˆāļĒāļ§āļŠāļēāļāđƒāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”
  • Target āļ„āļ·āļ­āđāļ­āđ‡āļžāļžāļĨāļīāđ€āļ„āļŠāļąāļ™āđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāļ—āļĩāđˆāļ„āļļāļ“āļ•āđ‰āļ­āļ‡āļāļēāļĢāļ—āļĢāļēāļšāļžāļĪāļ•āļīāļāļĢāļĢāļĄāļ āļēāļĒāđƒāļ•āđ‰āļāļēāļĢāđ‚āļŦāļĨāļ”

āļĨāļąāļāļĐāļ“āļ™āļēāļĄāļ‚āļ­āļ‡āđ€āļ­āļ™āļ—āļīāļ•āļĩ āļ‚āļąāđ‰āļ™āļ•āļ­āļ™ āđāļĨāļ°āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āđƒāļ™āđāļœāļ™āļ āļēāļž

āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āđāļĨāļ°āļ‚āļąāđ‰āļ™āļ•āļ­āļ™
āđ€āļāļīāļ”āļ­āļ°āđ„āļĢāļ‚āļķāđ‰āļ™
āļ­āļ°āđ„āļĢāļ­āļĒāļđāđˆāļ—āļĩāđˆāļ—āļēāļ‡āđ€āļ‚āđ‰āļē
āļœāļĨāļĨāļąāļžāļ˜āđŒāļ„āļ·āļ­āļ­āļ°āđ„āļĢ

āđ€āļ•āļĢāļĩāļĒāļĄ: āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļāļēāļĢāđ€āļ•āļĢāļĩāļĒāļĄāļāļēāļĢāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ—āļ”āļŠāļ­āļš

āđ‚āļŦāļĨāļ”āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒ
āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāđāļĨāļ°āļāļēāļĢāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™
āļœāļđāđ‰āđƒāļŠāđ‰
āđ‚āļŦāļĨāļ”āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒ
āļ—āļēāļ‡āđ€āļĨāļ·āļ­āļāļ‚āļ­āļ‡āđ€āļĄāļ•āļĢāļīāļāđāļĨāļ°
āļāļēāļĢāđ€āļ•āļĢāļĩāļĒāļĄāđāļœāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš
(āđ‚āļŦāļĨāļ”āđ‚āļ›āļĢāđ„āļŸāļĨāđŒ)
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ€āļ­āļ‡āļŠāļģāļŦāļĢāļąāļš
āļāļēāļĢāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ•āļąāļ§āđāļ—āļ™āļāļēāļĢāđ‚āļŦāļĨāļ”
āđāļœāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš
āļ§āļąāļ•āļ–āļļāļ›āļĢāļ°āļŠāļ‡āļ„āđŒāļ‚āļ­āļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļš

VM
āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļ„āļĨāļēāļ§āļ”āđŒ
āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āđ€āļŠāļĄāļ·āļ­āļ™āļ”āđ‰āļ§āļĒ
āļĨāļąāļāļĐāļ“āļ°āļ—āļĩāđˆāļˆāļģāđ€āļ›āđ‡āļ™
āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē VM āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āđ€āļˆāļ™āļ•āđŒāļāļēāļĢāđ‚āļŦāļĨāļ”
āļŠāļ„āļĢāļīāļ›āļ•āđŒāļāļēāļĢāļ—āļģāļ‡āļēāļ™āļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāļŠāļģāļŦāļĢāļąāļš
āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡ VM
VM āļāļģāļŦāļ™āļ”āļ„āđˆāļēāđƒāļ™
āļ„āļĨāļēāļ§āļ”āđŒ

env
āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāđāļĨāļ°āļāļēāļĢāđ€āļ•āļĢāļĩāļĒāļĄ OS
āļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļŠāļģāļŦāļĢāļąāļš
āļ‡āļēāļ™āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”
āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļŠāļģāļŦāļĢāļąāļš
āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”
āļŠāļ„āļĢāļīāļ›āļ•āđŒāļāļēāļĢāļ—āļģāļ‡āļēāļ™āļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāļŠāļģāļŦāļĢāļąāļš
āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļēāļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄ
āļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļ—āļĩāđˆāđ€āļ•āļĢāļĩāļĒāļĄāđ„āļ§āđ‰:
āļĢāļ°āļšāļšāļ›āļāļīāļšāļąāļ•āļīāļāļēāļĢ āļšāļĢāļīāļāļēāļĢ āđāļĨāļ°āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™
āļˆāļģāđ€āļ›āđ‡āļ™āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ—āļģāļ‡āļēāļ™
āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”

āđ‚āļŦāļĨāļ”āđ€āļ­āđ€āļˆāļ™āļ•āđŒ
āļāļēāļĢāļ•āļīāļ”āļ•āļąāđ‰āļ‡ āļāļēāļĢāļāļģāļŦāļ™āļ”āļ„āđˆāļē āđāļĨāļ°āļāļēāļĢāļāļģāļŦāļ™āļ”āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒ
āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”
āļŦāļĢāļ·āļ­āļ”āļēāļ§āļ™āđŒāđ‚āļŦāļĨāļ”āļ­āļīāļĄāđ€āļĄāļˆāļ™āļąāļāđ€āļ—āļĩāļĒāļšāļ—āđˆāļēāļˆāļēāļ
āđ‚āļŦāļĨāļ”āļ‹āļ­āļĢāđŒāļŠāļ—āļĩāđˆāļāļģāļŦāļ™āļ”āļ„āđˆāļēāđ„āļ§āđ‰āļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļē
āđ‚āļŦāļĨāļ”āļ­āļīāļĄāđ€āļĄāļˆāļ™āļąāļāđ€āļ—āļĩāļĒāļšāļ—āđˆāļēāļ•āđ‰āļ™āļ—āļēāļ‡
(YAT, JM āļŦāļĢāļ·āļ­āđ€āļŸāļĢāļĄāđ€āļ§āļīāļĢāđŒāļāļ—āļĩāđˆāđ€āļ‚āļĩāļĒāļ™āļ‚āļķāđ‰āļ™āđ€āļ­āļ‡)
āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē
āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”
āļ•āļąāđ‰āļ‡āļ„āđˆāļēāđāļĨāļ°āļžāļĢāđ‰āļ­āļĄ
āļ•āļąāļ§āđāļ—āļ™āļ āļēāļĢāļ°āļ‡āļēāļ™

āļāļēāļĢāļ—āļ”āļŠāļ­āļš: āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļ‚āļ­āļ‡āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ” āđāļŦāļĨāđˆāļ‡āļ—āļĩāđˆāļĄāļēāļ„āļ·āļ­āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”āļ—āļĩāđˆāļ›āļĢāļąāļšāđƒāļŠāđ‰āđƒāļ™āļāļĨāļļāđˆāļĄāļ•āļąāļ§āđāļ—āļ™āđ€āļ‰āļžāļēāļ°āļŠāļģāļŦāļĢāļąāļš GitLab CI

āđ‚āļŦāļĨāļ”
āļāļēāļĢāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™ Load Agent
āļ”āđ‰āļ§āļĒāđāļœāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ—āļĩāđˆāđ€āļĨāļ·āļ­āļ
āđāļĨāļ°āđ‚āļŦāļĨāļ”āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒ
āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļœāļđāđ‰āđƒāļŠāđ‰
āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™
āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”
āđāļœāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš
āļ§āļąāļ•āļ–āļļāļ›āļĢāļ°āļŠāļ‡āļ„āđŒāļ‚āļ­āļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļš
āļšāļąāļ™āļ—āļķāļāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢ
āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļš
āļšāļąāļ™āļ—āļķāļāļ‚āļ­āļ‡āļĢāļ°āļšāļš
āđ„āļ”āļ™āļēāļĄāļīāļāļ‚āļ­āļ‡āļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āđƒāļ™āđ€āļĄāļ•āļĢāļīāļāđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāđāļĨāļ°āđ€āļ­āđ€āļˆāļ™āļ•āđŒāļāļēāļĢāļšāļĢāļĢāļ—āļļāļ

āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļ•āļąāļ§āđāļ—āļ™
āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ‚āļ­āļ‡āļ•āļąāļ§āđāļ—āļ™
āđ‚āļŦāļĨāļ”āļŠāļ„āļĢāļīāļ›āļ•āđŒāļ—āļ”āļŠāļ­āļš
āļ•āļēāļĄāļ”āđ‰āļ§āļĒ
āđ‚āļŦāļĨāļ”āđ‚āļ›āļĢāđ„āļŸāļĨāđŒ
āđ‚āļŦāļĨāļ”āļāļēāļĢāđ‚āļ•āđ‰āļ•āļ­āļšāļ•āļąāļ§āđāļ—āļ™
āđ€āļžāļ·āđˆāļ­āļˆāļļāļ”āļ›āļĢāļ°āļŠāļ‡āļ„āđŒāđƒāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš
āđāļœāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš
āļ§āļąāļ•āļ–āļļāļ›āļĢāļ°āļŠāļ‡āļ„āđŒāļ‚āļ­āļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļš

āļ—āđˆāļ­āļ™
āļāļēāļĢāļĢāļ§āļšāļĢāļ§āļĄāļšāļąāļ™āļ—āļķāļ "āļ”āļīāļš"
āļĢāļ°āļŦāļ§āđˆāļēāļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”:
āđ‚āļŦāļĨāļ”āļšāļąāļ™āļ—āļķāļāļāļīāļˆāļāļĢāļĢāļĄāļ•āļąāļ§āđāļ—āļ™
āļŠāļ–āļēāļ™āļ°āļ‚āļ­āļ‡āđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāļāļēāļĢāļ—āļ”āļŠāļ­āļš
āđāļĨāļ° VM āļ—āļĩāđˆāļĢāļąāļ™āđ€āļ­āđ€āļˆāļ™āļ•āđŒ

āļšāļąāļ™āļ—āļķāļāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢ
āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļš
āļšāļąāļ™āļ—āļķāļāļ‚āļ­āļ‡āļĢāļ°āļšāļš

āļ•āļąāļ§āļŠāļĩāđ‰āļ§āļąāļ”
āļĢāļ§āļšāļĢāļ§āļĄāđ€āļĄāļ•āļĢāļīāļ "āļ”āļīāļš" āļĢāļ°āļŦāļ§āđˆāļēāļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļš

āđ„āļ”āļ™āļēāļĄāļīāļāļ‚āļ­āļ‡āļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āđƒāļ™āđ€āļĄāļ•āļĢāļīāļāđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒ
āđāļĨāļ°āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”

āļĢāļēāļĒāļ‡āļēāļ™: āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļāļēāļĢāđ€āļ•āļĢāļĩāļĒāļĄāļĢāļēāļĒāļ‡āļēāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš

āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļāļģāđ€āļ™āļīāļ”āđ„āļŸāļŸāđ‰āļē
āļĢāļ§āļšāļĢāļ§āļĄāļāļēāļĢāļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨ
āļĢāļ°āļšāļšāđ‚āļŦāļĨāļ”āđāļĨāļ°
āļĢāļ°āļšāļšāļ•āļĢāļ§āļˆāļŠāļ­āļš "āļ”āļīāļš"
āđ€āļĄāļ•āļĢāļīāļāđāļĨāļ°āļšāļąāļ™āļ—āļķāļ
āļāļēāļĢāļˆāļąāļ”āļ—āļģāļĢāļēāļĒāļ‡āļēāļ™āđƒāļ™
āļĢāļđāļ›āđāļšāļšāļ—āļĩāđˆāļĄāļ™āļļāļĐāļĒāđŒāļ­āđˆāļēāļ™āđ„āļ”āđ‰
āđ€āļ›āđ‡āļ™āđ„āļ›āđ„āļ”āđ‰āļ”āđ‰āļ§āļĒāļ­āļ‡āļ„āđŒāļ›āļĢāļ°āļāļ­āļš
āļ™āļąāļāļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒ
āļšāļąāļ™āļ—āļķāļāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢ
āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļš
āļšāļąāļ™āļ—āļķāļāļ‚āļ­āļ‡āļĢāļ°āļšāļš
āļžāļĨāļ§āļąāļ•āļ‚āļ­āļ‡āļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āđƒāļ™āđ€āļĄāļ•āļĢāļīāļ
āđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāđāļĨāļ°āļ•āļąāļ§āđāļ—āļ™āđ‚āļŦāļĨāļ”
āļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāļšāļąāļ™āļ—āļķāļ "āļ”āļīāļš"
āđƒāļ™āļĢāļđāļ›āđāļšāļšāļ—āļĩāđˆāđ€āļŦāļĄāļēāļ°āļāļąāļš
āļ­āļąāļ›āđ‚āļŦāļĨāļ”āđ„āļ›āļĒāļąāļ‡āļ—āļĩāđˆāļˆāļąāļ”āđ€āļāđ‡āļšāļ‚āđ‰āļ­āļĄāļđāļĨāļ āļēāļĒāļ™āļ­āļ
āļĢāļēāļĒāļ‡āļēāļ™āđ‚āļŦāļĨāļ”āļ„āļ‡āļ—āļĩāđˆ
āļĄāļ™āļļāļĐāļĒāđŒāļ­āđˆāļēāļ™āđ„āļ”āđ‰

āļŠāļēāļ˜āļēāļĢāļ“āļ°
āļāļēāļĢāđ€āļœāļĒāđāļžāļĢāđˆāļĢāļēāļĒāļ‡āļēāļ™
āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāđ‚āļŦāļĨāļ”
āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ āļēāļĒāļ™āļ­āļ
āļšāļĢāļīāļāļēāļĢ
āđāļ›āļĢāļĢāļđāļ› "āļ”āļīāļš"
āļšāļąāļ™āļ—āļķāļāđƒāļ™āļĢāļđāļ›āđāļšāļšāļ—āļĩāđˆāđ€āļŦāļĄāļēāļ°āļŠāļĄ
āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ‚āļ™āļ–āđˆāļēāļĒāđ„āļ›āļĒāļąāļ‡āļ āļēāļĒāļ™āļ­āļ
āļ„āļĨāļąāļ‡āđ€āļāđ‡āļš
āļšāļąāļ™āļ—āļķāļāđ„āļ§āđ‰āđƒāļ™āļ āļēāļĒāļ™āļ­āļ
āđ€āļ›āļīāļ”āļĢāļēāļĒāļ‡āļēāļ™āļāļēāļĢāļˆāļąāļ”āđ€āļāđ‡āļš
āđ‚āļŦāļĨāļ”āđ€āļŦāļĄāļēāļ°
āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒāļ‚āļ­āļ‡āļĄāļ™āļļāļĐāļĒāđŒ

āļāļģāļĨāļąāļ‡āđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ‚āļŦāļĨāļ”āļ‹āļ­āļĢāđŒāļŠāđƒāļ™āđ€āļ—āļĄāđ€āļžāļĨāļ• CI

āđ„āļ›āļ—āļĩāđˆāļŠāđˆāļ§āļ™āļ›āļāļīāļšāļąāļ•āļīāļāļąāļ™āđ€āļ–āļ­āļ° āļ‰āļąāļ™āļ•āđ‰āļ­āļ‡āļāļēāļĢāđāļŠāļ”āļ‡āļ§āļīāļ˜āļĩāļāļēāļĢāđƒāļ™āđ‚āļ„āļĢāļ‡āļāļēāļĢāļšāļēāļ‡āđ‚āļ„āļĢāļ‡āļāļēāļĢāđƒāļ™āļšāļĢāļīāļĐāļąāļ— āđ€āļ—āļ„āđ‚āļ™āđ‚āļĨāļĒāļĩāđ€āļŠāļīāļ‡āļšāļ§āļ āđ€āļĢāļēāđ„āļ”āđ‰āđƒāļŠāđ‰āđāļ™āļ§āļ„āļīāļ”āļ‚āļ­āļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢ

āļ­āļąāļ™āļ”āļąāļšāđāļĢāļ āļ”āđ‰āļ§āļĒāļ„āļ§āļēāļĄāļŠāđˆāļ§āļĒāđ€āļŦāļĨāļ·āļ­āļˆāļēāļāļ§āļīāļĻāļ§āļāļĢ DevOps āđ€āļĢāļēāļŠāļĢāđ‰āļēāļ‡āļāļĨāļļāđˆāļĄāļ•āļąāļ§āđāļ—āļ™āđ€āļ‰āļžāļēāļ°āđƒāļ™ GitLab CI āđ€āļžāļ·āđˆāļ­āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ” āđ€āļžāļ·āđˆāļ­āđ„āļĄāđˆāđƒāļŦāđ‰āļŠāļąāļšāļŠāļ™āđƒāļ™āđ€āļ—āļĄāđ€āļžāļĨāļ•āļāļąāļšāļœāļđāđ‰āļ­āļ·āđˆāļ™ āđ€āļŠāđˆāļ™ āļžāļđāļĨāđāļ­āļŠāđ€āļ‹āļĄāļšāļĨāļĩ āđ€āļĢāļēāđ„āļ”āđ‰āđ€āļžāļīāđˆāļĄāđāļ—āđ‡āļāđƒāļŦāđ‰āļāļąāļšāđ€āļ­āđ€āļˆāļ™āļ•āđŒāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰ āđāļ—āđ‡āļ: āđ‚āļŦāļĨāļ”. āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āđāļ—āđ‡āļāļ­āļ·āđˆāļ™āđ† āļ—āļĩāđˆāđ€āļ‚āđ‰āļēāđƒāļˆāđ„āļ”āđ‰ āļžāļ§āļāđ€āļ‚āļēāļ–āļēāļĄ āļĢāļ°āļŦāļ§āđˆāļēāļ‡āļāļēāļĢāļĨāļ‡āļ—āļ°āđ€āļšāļĩāļĒāļ™ āļ™āļąāļāļ§āļīāđˆāļ‡ GitLab CI

āļˆāļ°āļŦāļēāļžāļĨāļąāļ‡āļ‡āļēāļ™āļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāđ‚āļ”āļĒāļŪāļēāļĢāđŒāļ”āđāļ§āļĢāđŒāđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āđ„āļĢ? āļ„āļļāļ“āļĨāļąāļāļĐāļ“āļ°āļ‚āļ­āļ‡āđ€āļ­āđ€āļˆāļ™āļ•āđŒāđ‚āļŦāļĨāļ” - āļˆāļģāļ™āļ§āļ™ vCPU, RAM āđāļĨāļ°āļ”āļīāļŠāļāđŒāļ—āļĩāđˆāđ€āļžāļĩāļĒāļ‡āļžāļ­ - āļŠāļēāļĄāļēāļĢāļ–āļ„āļģāļ™āļ§āļ“āđ„āļ”āđ‰āļˆāļēāļāļ„āļ§āļēāļĄāļˆāļĢāļīāļ‡āļ—āļĩāđˆāļ§āđˆāļē Docker, Python (āļŠāļģāļŦāļĢāļąāļš Yandex.Tank), āļ•āļąāļ§āđāļ—āļ™ GitLab CI, Java (āļŠāļģāļŦāļĢāļąāļš Apache JMeter) āļ„āļ§āļĢāļ—āļģāļ‡āļēāļ™āļšāļ™āđ€āļ­āđ€āļˆāļ™āļ•āđŒ . āļŠāļģāļŦāļĢāļąāļš Java āļ āļēāļĒāđƒāļ•āđ‰ JMeter āļ‚āļ­āđāļ™āļ°āļ™āļģāđƒāļŦāđ‰āđƒāļŠāđ‰ RAM āļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒ 512 MB āđāļĨāļ°āđ€āļ›āđ‡āļ™āļ‚āļĩāļ”āļˆāļģāļāļąāļ”āļŠāļđāļ‡āļŠāļļāļ” āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģāļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆ 80%.

āļ”āļąāļ‡āļ™āļąāđ‰āļ™ āļˆāļēāļāļ›āļĢāļ°āļŠāļšāļāļēāļĢāļ“āđŒāļ‚āļ­āļ‡āđ€āļĢāļē āđ€āļĢāļēāđāļ™āļ°āļ™āļģāđƒāļŦāđ‰āđƒāļŠāđ‰ vCPU āļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒ 4 āļ•āļąāļ§, RAM 4 GB, SSD 60 GB āļŠāļģāļŦāļĢāļąāļšāđ€āļ­āđ€āļˆāļ™āļ•āđŒāđ‚āļŦāļĨāļ” āļ—āļĢāļđāļžāļļāļ•āļ‚āļ­āļ‡āļāļēāļĢāđŒāļ”āđ€āļ„āļĢāļ·āļ­āļ‚āđˆāļēāļĒāļˆāļ°āļžāļīāļˆāļēāļĢāļ“āļēāļˆāļēāļāļ‚āđ‰āļ­āļāļģāļŦāļ™āļ”āļ‚āļ­āļ‡āđ‚āļŦāļĨāļ”āđ‚āļ›āļĢāđ„āļŸāļĨāđŒ

āđ€āļĢāļēāđƒāļŠāđ‰āđāļŦāļĨāđˆāļ‡āđ‚āļŦāļĨāļ”āļŠāļ­āļ‡āđāļŦāļĨāđˆāļ‡āđ€āļ›āđ‡āļ™āļŦāļĨāļąāļ - āļ­āļīāļĄāđ€āļĄāļˆ Apache JMeter āđāļĨāļ° Yandex.Tank

Yandex.Tank āđ€āļ›āđ‡āļ™āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āđ‚āļ­āđ€āļžāđˆāļ™āļ‹āļ­āļĢāđŒāļŠāļˆāļēāļ Yandex āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ” āļŠāļ–āļēāļ›āļąāļ•āļĒāļāļĢāļĢāļĄāđ‚āļĄāļ”āļđāļĨāļēāļĢāđŒāļ­āļīāļ‡āļ•āļēāļĄāļ•āļąāļ§āļŠāļĢāđ‰āļēāļ‡āļ„āļģāļ‚āļ­ HTTP āđāļšāļšāļ­āļ°āļ‹āļīāļ‡āđ‚āļ„āļĢāļ™āļąāļŠāđāļšāļšāļ­āļ°āļ‹āļīāļ‡āđ‚āļ„āļĢāļ™āļąāļŠāļ—āļĩāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļŠāļđāļ‡āļ‚āļ­āļ‡ Phantom āļĢāļ–āļ–āļąāļ‡āļĄāļĩāļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ—āļĢāļąāļžāļĒāļēāļāļĢāļ‚āļ­āļ‡āđ€āļ‹āļīāļĢāđŒāļŸāđ€āļ§āļ­āļĢāđŒāļ āļēāļĒāđƒāļ•āđ‰āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļœāđˆāļēāļ™āđ‚āļ›āļĢāđ‚āļ•āļ„āļ­āļĨ SSH āđƒāļ™āļ•āļąāļ§ āļŠāļēāļĄāļēāļĢāļ–āļŦāļĒāļļāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļ”āļĒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāļ āļēāļĒāđƒāļ•āđ‰āđ€āļ‡āļ·āđˆāļ­āļ™āđ„āļ‚āļ—āļĩāđˆāļāļģāļŦāļ™āļ” āļŠāļēāļĄāļēāļĢāļ–āđāļŠāļ”āļ‡āļœāļĨāđ„āļ”āđ‰āļ—āļąāđ‰āļ‡āđƒāļ™āļ„āļ­āļ™āđ‚āļ‹āļĨāđāļĨāļ°āđƒāļ™āļĢāļđāļ›āđāļšāļšāļ‚āļ­āļ‡āļāļĢāļēāļŸ āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđ‚āļĄāļ”āļđāļĨāļ‚āļ­āļ‡āļ„āļļāļ“āļāļąāļš āđ€āļžāļ·āđˆāļ­āļ‚āļĒāļēāļĒāļāļēāļĢāļ—āļģāļ‡āļēāļ™ āļĒāļąāļ‡āđ„āļ‡āļāđ‡āļ•āļēāļĄ āđ€āļĢāļēāđƒāļŠāđ‰āļĢāļ–āļ–āļąāļ‡āļ•āļ­āļ™āļ—āļĩāđˆāļĒāļąāļ‡āđ„āļĄāđˆāđ€āļ›āđ‡āļ™āļāļĢāļ°āđāļŠāļŦāļĨāļąāļ āđƒāļ™āļšāļ—āļ„āļ§āļēāļĄ "Yandex.Tank āđāļĨāļ°āļĢāļ°āļšāļšāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāđƒāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”Âŧ āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļ­āđˆāļēāļ™āđ€āļĢāļ·āđˆāļ­āļ‡āļĢāļēāļ§āļ‚āļ­āļ‡āļ§āļīāļ˜āļĩāļ—āļĩāđˆāđ€āļĢāļēāļ—āļģāļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āļāļąāļšāļĄāļąāļ™āđƒāļ™āļ›āļĩ 2013 āđ„āļŸāļĢāđŒāļ§āļ­āļĨāļĨāđŒāđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™ PT āđ€āļ›āđ‡āļ™āļŦāļ™āļķāđˆāļ‡āđƒāļ™āļœāļĨāļīāļ•āļ āļąāļ“āļ‘āđŒāļ‚āļ­āļ‡āļšāļĢāļīāļĐāļąāļ—āđ€āļĢāļē

āļ­āļēāļ›āļēāđ€āļŠāđˆ āđ€āļˆāļĄāļīāđ€āļ•āļ­āļĢāđŒ āđ€āļ›āđ‡āļ™āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āđ‚āļ­āđ€āļžāđˆāļ™āļ‹āļ­āļĢāđŒāļŠāļˆāļēāļ Apache āļŠāļēāļĄāļēāļĢāļ–āđƒāļŠāđ‰āđ„āļ”āđ‰āļ”āļĩāļžāļ­ āđ† āļāļąāļ™āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļ§āđ‡āļšāđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļ—āļąāđ‰āļ‡āđāļšāļšāļŠāđāļ•āļ•āļīāļāđāļĨāļ°āđ„āļ”āļ™āļēāļĄāļīāļ JMeter āļĢāļ­āļ‡āļĢāļąāļšāđ‚āļ›āļĢāđ‚āļ•āļ„āļ­āļĨāđāļĨāļ°āļ§āļīāļ˜āļĩāļāļēāļĢāđ‚āļ•āđ‰āļ•āļ­āļšāļāļąāļšāđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļˆāļģāļ™āļ§āļ™āļĄāļēāļ: HTTP, HTTPS (Java, NodeJS, PHP, ASP.NET āđ€āļ›āđ‡āļ™āļ•āđ‰āļ™), SOAP / REST Webservices, FTP, TCP, LDAP, SMTP(S), POP3( S) ) āđāļĨāļ° IMAP(S) āļ‹āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļœāđˆāļēāļ™ JDBC āļŠāļēāļĄāļēāļĢāļ–āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ„āļģāļŠāļąāđˆāļ‡āđ€āļŠāļĨāļĨāđŒāđāļĨāļ°āļ—āļģāļ‡āļēāļ™āļāļąāļšāļ§āļąāļ•āļ–āļļ Java JMeter āļĄāļĩ IDE āļŠāļģāļŦāļĢāļąāļšāļŠāļĢāđ‰āļēāļ‡ āđāļāđ‰āļˆāļļāļ”āļšāļāļžāļĢāđˆāļ­āļ‡ āđāļĨāļ°āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ•āļēāļĄāđāļœāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš āļ™āļ­āļāļˆāļēāļāļ™āļĩāđ‰āļĒāļąāļ‡āļĄāļĩ CLI āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļšāļĢāļĢāļ—āļąāļ”āļ„āļģāļŠāļąāđˆāļ‡āļšāļ™āļĢāļ°āļšāļšāļ›āļāļīāļšāļąāļ•āļīāļāļēāļĢāļ—āļĩāđˆāļĢāļ­āļ‡āļĢāļąāļš Java (Linux, Windows, Mac OS X) āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āļ™āļĩāđ‰āļŠāļēāļĄāļēāļĢāļ–āļŠāļĢāđ‰āļēāļ‡āļĢāļēāļĒāļ‡āļēāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš HTML āđāļšāļšāđ„āļ”āļ™āļēāļĄāļīāļ

āđ€āļžāļ·āđˆāļ­āļ„āļ§āļēāļĄāļŠāļ°āļ”āļ§āļāđƒāļ™āļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āļ āļēāļĒāđƒāļ™āļšāļĢāļīāļĐāļąāļ—āļ‚āļ­āļ‡āđ€āļĢāļē āļŠāļģāļŦāļĢāļąāļšāļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļ‚āļ­āļ‡āļœāļđāđ‰āļ—āļ”āļŠāļ­āļšāđ€āļ­āļ‡āđƒāļ™āļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āđāļĨāļ°āđ€āļžāļīāđˆāļĄāļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄ āđ€āļĢāļēāđ„āļ”āđ‰āļŠāļĢāđ‰āļēāļ‡āļ­āļīāļĄāđ€āļĄāļˆāļ™āļąāļāđ€āļ—āļĩāļĒāļšāļ—āđˆāļēāļ‚āļ­āļ‡āđ‚āļŦāļĨāļ”āļ‹āļ­āļĢāđŒāļŠāļšāļ™ GitLab CI āļžāļĢāđ‰āļ­āļĄāđ€āļœāļĒāđāļžāļĢāđˆāđ„āļ›āļĒāļąāļ‡āļ āļēāļĒāđƒāļ™ āļĢāļĩāļˆāļīāļŠāļ—āļĢāļĩāļ™āļąāļāđ€āļ—āļĩāļĒāļšāļ—āđˆāļēāļ—āļĩāđˆ Artifactory. āļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļ—āļģāđƒāļŦāđ‰āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āđƒāļ™āļ—āđˆāļ­āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āļ—āļģāđ„āļ”āđ‰āđ€āļĢāđ‡āļ§āđāļĨāļ°āļ‡āđˆāļēāļĒāļ‚āļķāđ‰āļ™ āļ§āļīāļ˜āļĩāļ—āļģ docker push to Registry āļœāđˆāļēāļ™ GitLab CI - āļ”āļđ āļ„āļģāđāļ™āļ°āļ™āļģ.

āđ€āļĢāļēāđƒāļŠāđ‰āđ„āļŸāļĨāđŒāļ™āļąāļāđ€āļ—āļĩāļĒāļšāļ—āđˆāļēāļžāļ·āđ‰āļ™āļāļēāļ™āļ™āļĩāđ‰āļŠāļģāļŦāļĢāļąāļš Yandex.Tank:

Dockerfile 
1 | FROM direvius/yandex-tank
2 | ENTRYPOINT [""]

āđāļĨāļ°āļŠāļģāļŦāļĢāļąāļš Apache JMeter āļ­āļąāļ™āļ™āļĩāđ‰:

Dockerfile 
1 | FROM vmarrazzo/jmeter
2 | ENTRYPOINT [""]

āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļ­āđˆāļēāļ™āļ§āļīāļ˜āļĩāļāļēāļĢāļ—āļģāļ‡āļēāļ™āļ‚āļ­āļ‡āļĢāļ°āļšāļšāļāļēāļĢāļœāļŠāļēāļ™āļĢāļ§āļĄāļ­āļĒāđˆāļēāļ‡āļ•āđˆāļ­āđ€āļ™āļ·āđˆāļ­āļ‡āļ‚āļ­āļ‡āđ€āļĢāļēāđ„āļ”āđ‰āđƒāļ™āļšāļ—āļ„āļ§āļēāļĄ "āļĢāļ°āļšāļšāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāļ‚āļ­āļ‡āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļžāļąāļ’āļ™āļē: āļ§āļīāļ˜āļĩāļ—āļĩāđˆāđ€āļĢāļēāđƒāļŠāđ‰āđāļ™āļ§āļ„āļīāļ” DevOps āļ—āļĩāđˆ Positive Technologies'

āđ€āļ—āļĄāđ€āļžāļĨāļ•āđāļĨāļ°āđ„āļ›āļ›āđŒāđ„āļĨāļ™āđŒ

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ‚āļ­āļ‡āđ€āļ—āļĄāđ€āļžāļĨāļ•āļŠāļģāļŦāļĢāļąāļšāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļāļēāļĢāđ‚āļŦāļĨāļ”āļĄāļĩāļ­āļĒāļđāđˆāđƒāļ™āđ‚āļ„āļĢāļ‡āļāļēāļĢ āđ‚āļŦāļĨāļ”āļāļēāļĢāļŠāļēāļ˜āļīāļ•. āđƒāļ™ āđ„āļŸāļĨāđŒ readme āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļ­āđˆāļēāļ™āļ„āļģāđāļ™āļ°āļ™āļģāđƒāļ™āļāļēāļĢāđƒāļŠāđ‰āđ€āļ—āļĄāđ€āļžāļĨāļ• āđƒāļ™āđ€āļ—āļĄāđ€āļžāļĨāļ•āđ€āļ­āļ‡ (āđ„āļŸāļĨāđŒ .gitlab-ci.yml) āļĄāļĩāļšāļąāļ™āļ—āļķāļāđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļŠāļīāđˆāļ‡āļ—āļĩāđˆāđāļ•āđˆāļĨāļ°āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļĢāļąāļšāļœāļīāļ”āļŠāļ­āļš

āđ€āļ—āļĄāđ€āļžāļĨāļ•āļ™āļĩāđ‰āđ€āļĢāļĩāļĒāļšāļ‡āđˆāļēāļĒāļĄāļēāļāđāļĨāļ°āđāļŠāļ”āļ‡āđƒāļŦāđ‰āđ€āļŦāđ‡āļ™āļ–āļķāļ‡āļŠāļēāļĄāļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļ‚āļ­āļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āļ—āļĩāđˆāļ­āļ˜āļīāļšāļēāļĒāđ„āļ§āđ‰āđƒāļ™āđ„āļ”āļ­āļ°āđāļāļĢāļĄāļ”āđ‰āļēāļ™āļšāļ™: āļāļēāļĢāđ€āļ•āļĢāļĩāļĒāļĄ āļāļēāļĢāļ—āļ”āļŠāļ­āļš āđāļĨāļ°āļāļēāļĢāđ€āļœāļĒāđāļžāļĢāđˆāļĢāļēāļĒāļ‡āļēāļ™ āļĢāļąāļšāļœāļīāļ”āļŠāļ­āļšāđ€āļĢāļ·āđˆāļ­āļ‡āļ™āļĩāđ‰ āļ‚āļąāđ‰āļ™āļ•āļ­āļ™: āđ€āļ•āļĢāļĩāļĒāļĄ āļ—āļ”āļŠāļ­āļš āđāļĨāļ°āļĢāļēāļĒāļ‡āļēāļ™.

  1. āđ€āļ§āļ—āļĩ āđ€āļ•āļĢāļĩāļĒāļĄāļāļēāļĢ āļ„āļ§āļĢāđƒāļŠāđ‰āđ€āļžāļ·āđˆāļ­āļāļģāļŦāļ™āļ”āļ„āđˆāļēāđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāļāļēāļĢāļ—āļ”āļŠāļ­āļšāļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļēāļŦāļĢāļ·āļ­āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāļžāļĢāđ‰āļ­āļĄāđƒāļŠāđ‰āļ‡āļēāļ™ āđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āļāļģāļŦāļ™āļ”āļ„āđˆāļēāļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļŠāļģāļŦāļĢāļąāļšāđ‚āļŦāļĨāļ”āļ‹āļ­āļĢāđŒāļŠ āđ‚āļ”āļĒāļŠāļĢāđ‰āļēāļ‡āđ„āļ§āđ‰āļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļēāđ€āļ›āđ‡āļ™āļ­āļīāļĄāđ€āļĄāļˆāļ™āļąāļāđ€āļ—āļĩāļĒāļšāļ—āđˆāļēāđāļĨāļ°āđ‚āļžāļŠāļ•āđŒāđƒāļ™āļĢāļĩāļˆāļīāļŠāļ—āļĢāļĩāļ™āļąāļāđ€āļ—āļĩāļĒāļšāļ—āđˆāļē: āđ€āļžāļĩāļĒāļ‡āļĢāļ°āļšāļļāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ—āļĩāđˆāļ•āđ‰āļ­āļ‡āļāļēāļĢāđƒāļ™āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš āđāļ•āđˆāļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļŠāļĢāđ‰āļēāļ‡āđƒāļŦāļĄāđˆāđāļĨāļ°āļŠāļĢāđ‰āļēāļ‡āļ āļēāļžāļ—āļĩāđˆāđāļāđ‰āđ„āļ‚āļ‚āļ­āļ‡āļ„āļļāļ“āđ€āļ­āļ‡āđ„āļ”āđ‰
  2. āđ€āļ§āļ—āļĩ āļ—āļ”āļŠāļ­āļš āđƒāļŠāđ‰āđ€āļžāļ·āđˆāļ­āļĢāļ°āļšāļļāđāļŦāļĨāđˆāļ‡āđ‚āļŦāļĨāļ” āļĢāļąāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļš āđāļĨāļ°āļˆāļąāļ”āđ€āļāđ‡āļšāļ§āļąāļ•āļ–āļļāļ—āļ”āļŠāļ­āļš āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āđ€āļĨāļ·āļ­āļāđāļŦāļĨāđˆāļ‡āđ‚āļŦāļĨāļ”āđƒāļ”āļāđ‡āđ„āļ”āđ‰: Yandex.Tank, Apache JMeter, āļ‚āļ­āļ‡āļ„āļļāļ“āđ€āļ­āļ‡āļŦāļĢāļ·āļ­āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļĢāļ§āļĄāļāļąāļ™ āļŦāļēāļāļ•āđ‰āļ­āļ‡āļāļēāļĢāļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™āđāļŦāļĨāđˆāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™ āđ€āļžāļĩāļĒāļ‡āđāļŠāļ”āļ‡āļ„āļ§āļēāļĄāļ„āļīāļ”āđ€āļŦāđ‡āļ™āļŦāļĢāļ·āļ­āļĨāļšāļ‡āļēāļ™ āļˆāļļāļ”āđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļŠāļģāļŦāļĢāļąāļšāđ‚āļŦāļĨāļ”āļ‹āļ­āļĢāđŒāļŠ:
    • āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāļāļēāļĢāđ€āļ›āļīāļ”āļ•āļąāļ§āļŠāļģāļŦāļĢāļąāļš Yandex.Tank āļĢāļ°āļšāļļāđ„āļ§āđ‰āđƒāļ™āđ„āļŸāļĨāđŒ./tests/yandextank.sh,
    • āļĄāļĩāļāļēāļĢāļĢāļ°āļšāļļāļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™ Apache JMeter āđƒāļ™āđ„āļŸāļĨāđŒ ./tests/jmeter.sh.

    āļŦāļĄāļēāļĒāđ€āļŦāļ•āļļ: āđ€āļ—āļĄāđ€āļžāļĨāļ•āļāļēāļĢāļāļģāļŦāļ™āļ”āļ„āđˆāļēāđāļ­āļŠāđ€āļ‹āļĄāļšāļĨāļĩāđƒāļŠāđ‰āđ€āļžāļ·āđˆāļ­āļ•āļąāđ‰āļ‡āļ„āđˆāļēāļāļēāļĢāđ‚āļ•āđ‰āļ•āļ­āļšāļāļąāļšāļĢāļ°āļšāļš CI āđāļĨāļ°āđ„āļĄāđˆāđ„āļ”āđ‰āļŦāļĄāļēāļĒāļ„āļ§āļēāļĄāļ–āļķāļ‡āļāļēāļĢāļ§āļēāļ‡āļ•āļĢāļĢāļāļ°āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđƒāļ™āļ™āļąāđ‰āļ™ āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ—āļ”āļŠāļ­āļš āļˆāļ°āļĄāļĩāļāļēāļĢāļĢāļ°āļšāļļāļˆāļļāļ”āđ€āļ‚āđ‰āļēāđƒāļŠāđ‰āļ‡āļēāļ™āļ‹āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āļ—āļĩāđˆāļ•āļąāđ‰āļ‡āļ‚āļ­āļ‡āļŠāļ„āļĢāļīāļ›āļ•āđŒāļ„āļ§āļšāļ„āļļāļĄāļāļēāļĢāļ—āļļāļšāļ•āļĩ āļ§āļīāļ˜āļĩāļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļāļēāļĢāļ—āļ”āļŠāļ­āļš āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āļĢāļēāļĒāļ‡āļēāļ™ āđāļĨāļ°āļŠāļ„āļĢāļīāļ›āļ•āđŒāļāļēāļĢāļ—āļ”āļŠāļ­āļšāļˆāļ°āļ•āđ‰āļ­āļ‡āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđ‚āļ”āļĒāļ§āļīāļĻāļ§āļāļĢāļ„āļ§āļšāļ„āļļāļĄāļ„āļļāļ“āļ āļēāļž āđƒāļ™āļāļēāļĢāļŠāļēāļ˜āļīāļ• āļŠāļģāļŦāļĢāļąāļšāđāļŦāļĨāđˆāļ‡āđ‚āļŦāļĨāļ”āļ—āļąāđ‰āļ‡āļŠāļ­āļ‡ āļ„āļģāļ‚āļ­āļ‚āļ­āļ‡āļŦāļ™āđ‰āļēāļŦāļĨāļąāļāļ‚āļ­āļ‡āļĒāļēāļ™āđ€āļ”āļāļ‹āđŒāļˆāļ°āļ–āļđāļāđƒāļŠāđ‰āđ€āļ›āđ‡āļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ—āļĩāđˆāļ‡āđˆāļēāļĒāļ—āļĩāđˆāļŠāļļāļ” āļŠāļ„āļĢāļīāļ›āļ•āđŒāđāļĨāļ°āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ­āļĒāļđāđˆāđƒāļ™āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩ ./āļ—āļ”āļŠāļ­āļš.

  3. āļ—āļĩāđˆāđ€āļ§āļ—āļĩ āļĢāļēāļĒāļ‡āļēāļ™ āļ„āļļāļ“āļ•āđ‰āļ­āļ‡āļ­āļ˜āļīāļšāļēāļĒāļ§āļīāļ˜āļĩāđ€āļœāļĒāđāļžāļĢāđˆāļœāļĨāļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ—āļĩāđˆāđ„āļ”āđ‰āļĢāļąāļšāđƒāļ™āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ„āļ›āļĒāļąāļ‡āļ—āļĩāđˆāļˆāļąāļ”āđ€āļāđ‡āļšāļ‚āđ‰āļ­āļĄāļđāļĨāļ āļēāļĒāļ™āļ­āļ āđ€āļŠāđˆāļ™ āđ„āļ›āļĒāļąāļ‡ GitLab Pages āļŦāļĢāļ·āļ­āļĢāļ°āļšāļšāļĢāļēāļĒāļ‡āļēāļ™āļžāļīāđ€āļĻāļĐ GitLab Pages āļāļģāļŦāļ™āļ”āđƒāļŦāđ‰āđ„āļ”āđ€āļĢāđ‡āļāļ—āļ­āļĢāļĩ ./public āļ•āđ‰āļ­āļ‡āđ„āļĄāđˆāļ§āđˆāļēāļ‡āđ€āļ›āļĨāđˆāļēāđāļĨāļ°āļĄāļĩāđ„āļŸāļĨāđŒ index.html āđ€āļ›āđ‡āļ™āļ­āļĒāđˆāļēāļ‡āļ™āđ‰āļ­āļĒāļŦāļĨāļąāļ‡āļˆāļēāļāļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļŠāļĢāđ‡āļˆāļŠāļīāđ‰āļ™ āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļ­āđˆāļēāļ™āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļ„āļ§āļēāļĄāđāļ•āļāļ•āđˆāļēāļ‡āļ‚āļ­āļ‡āļšāļĢāļīāļāļēāļĢ GitLab Pages āļĨāļīāļ‡āļ„āđŒ.

    āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ‚āļ­āļ‡āļ§āļīāļ˜āļĩāļāļēāļĢāļŠāđˆāļ‡āļ­āļ­āļāļ‚āđ‰āļ­āļĄāļđāļĨ:

    āđ‚āļžāļŠāļ•āđŒāļ„āļģāđāļ™āļ°āļ™āļģāđƒāļ™āļāļēāļĢāļ•āļąāđ‰āļ‡āļ„āđˆāļē:

āđƒāļ™āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļāļēāļĢāļŠāļēāļ˜āļīāļ• āđ„āļ›āļ›āđŒāđ„āļĨāļ™āđŒāļ—āļĩāđˆāļĄāļĩāļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āđāļĨāļ°āđāļŦāļĨāđˆāļ‡āđ‚āļŦāļĨāļ”āļŠāļ­āļ‡āđāļŦāļĨāđˆāļ‡ (āļ„āļļāļ“āļŠāļēāļĄāļēāļĢāļ–āļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™āļ­āļąāļ™āļ—āļĩāđˆāđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™āđ„āļ”āđ‰) āļˆāļ°āļĄāļĩāļĨāļąāļāļĐāļ“āļ°āļ”āļąāļ‡āļ™āļĩāđ‰:

āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢ CI āļŠāļģāļŦāļĢāļąāļšāļ™āļąāļāļžāļąāļ’āļ™āļē

Apache JMeter āļŠāļēāļĄāļēāļĢāļ–āļŠāļĢāđ‰āļēāļ‡āļĢāļēāļĒāļ‡āļēāļ™ HTML āđ„āļ”āđ‰āđ€āļ­āļ‡ āļ”āļąāļ‡āļ™āļąāđ‰āļ™āļāļēāļĢāļšāļąāļ™āļ—āļķāļāļĢāļēāļĒāļ‡āļēāļ™āđƒāļ™ GitLab Pages āđ‚āļ”āļĒāđƒāļŠāđ‰āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āļĄāļēāļ•āļĢāļāļēāļ™āļˆāļķāļ‡āđƒāļŦāđ‰āļœāļĨāļāļģāđ„āļĢāļĄāļēāļāļāļ§āđˆāļē āļ™āļĩāđˆāļ„āļ·āļ­āļĨāļąāļāļĐāļ“āļ°āļ‚āļ­āļ‡āļĢāļēāļĒāļ‡āļēāļ™ Apache JMeter:

āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢ CI āļŠāļģāļŦāļĢāļąāļšāļ™āļąāļāļžāļąāļ’āļ™āļē

āđƒāļ™āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļāļēāļĢāļŠāļēāļ˜āļīāļ•āļŠāļģāļŦāļĢāļąāļš Yandex.Tank āļ„āļļāļ“āļˆāļ°āđ€āļŦāđ‡āļ™āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™ āļĢāļēāļĒāļ‡āļēāļ™āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ›āļĨāļ­āļĄ āđƒāļ™āļŠāđˆāļ§āļ™āļ‚āļ­āļ‡ GitLab Pages āļĢāļ°āļŦāļ§āđˆāļēāļ‡āļāļēāļĢāļ—āļ”āļŠāļ­āļš Tank āļŠāļēāļĄāļēāļĢāļ–āļšāļąāļ™āļ—āļķāļāļœāļĨāļĨāļąāļžāļ˜āđŒāđ„āļ›āļĒāļąāļ‡āļāļēāļ™āļ‚āđ‰āļ­āļĄāļđāļĨ InfluxDB āđāļĨāļ°āļˆāļēāļāļ™āļąāđ‰āļ™āļŠāļēāļĄāļēāļĢāļ–āđāļŠāļ”āļ‡āļœāļĨāđ„āļ”āđ‰ āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ€āļŠāđˆāļ™ āđƒāļ™ Grafana (āļāļēāļĢāļāļģāļŦāļ™āļ”āļ„āđˆāļēāđ€āļŠāļĢāđ‡āļˆāļŠāļīāđ‰āļ™āđƒāļ™āđ„āļŸāļĨāđŒ ./tests/example-yandextank-test.yml). āļ™āļĩāđˆāļ„āļ·āļ­āļĨāļąāļāļĐāļ“āļ°āļ‚āļ­āļ‡āļĢāļēāļĒāļ‡āļēāļ™āļ‚āļ­āļ‡ Tank āđƒāļ™ Grafana:

āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢ CI āļŠāļģāļŦāļĢāļąāļšāļ™āļąāļāļžāļąāļ’āļ™āļē

āļŠāļĢāļļāļ›

āđƒāļ™āļšāļ—āļ„āļ§āļēāļĄ āļ‰āļąāļ™āđ„āļ”āđ‰āļžāļđāļ”āļ–āļķāļ‡āđāļ™āļ§āļ„āļīāļ”āļ‚āļ­āļ‡ "āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢ" (āđ‚āļŦāļĨāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ€āļ›āđ‡āļ™āļšāļĢāļīāļāļēāļĢ) āđāļ™āļ§āļ„āļīāļ”āļŦāļĨāļąāļāļ„āļ·āļ­āļāļēāļĢāđƒāļŠāđ‰āđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āļžāļ·āđ‰āļ™āļāļēāļ™āļ‚āļ­āļ‡āļžāļđāļĨāđ€āļ­āđ€āļˆāļ™āļ•āđŒāđ‚āļŦāļĨāļ”āļ—āļĩāđˆāļāļģāļŦāļ™āļ”āļ„āđˆāļēāđ„āļ§āđ‰āļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļē āļ­āļīāļĄāđ€āļĄāļˆāļ™āļąāļāđ€āļ—āļĩāļĒāļšāļ—āđˆāļēāļ‚āļ­āļ‡āđ‚āļŦāļĨāļ”āļ‹āļ­āļĢāđŒāļŠ āļĢāļ°āļšāļšāļāļēāļĢāļĢāļēāļĒāļ‡āļēāļ™ āđāļĨāļ°āđ„āļ›āļ›āđŒāđ„āļĨāļ™āđŒāļ—āļĩāđˆāļĢāļ§āļĄāđ„āļ§āđ‰āđƒāļ™ GitLab CI āļ•āļēāļĄāđ€āļ—āļĄāđ€āļžāļĨāļ• .gitlab-ci.yml āđāļšāļšāļ‡āđˆāļēāļĒ (āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡ āļĨāļīāļ‡āļ„āđŒ). āļ—āļąāđ‰āļ‡āļŦāļĄāļ”āļ™āļĩāđ‰āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļŠāļ™āļąāļšāļŠāļ™āļļāļ™āđ‚āļ”āļĒāļ—āļĩāļĄāļ§āļīāļĻāļ§āļāļĢāļĢāļ°āļšāļšāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļīāļāļĨāļļāđˆāļĄāđ€āļĨāđ‡āļāđ† āđāļĨāļ°āļˆāļģāļĨāļ­āļ‡āļ•āļēāļĄāļ„āļģāļĢāđ‰āļ­āļ‡āļ‚āļ­āļ‚āļ­āļ‡āļ—āļĩāļĄāļœāļĨāļīāļ•āļ āļąāļ“āļ‘āđŒ āļ‰āļąāļ™āļŦāļ§āļąāļ‡āļ§āđˆāļēāļŠāļīāđˆāļ‡āļ™āļĩāđ‰āļˆāļ°āļŠāđˆāļ§āļĒāļ„āļļāļ“āđƒāļ™āļāļēāļĢāđ€āļ•āļĢāļĩāļĒāļĄāļāļēāļĢāđāļĨāļ°āļ™āļģāđāļœāļ™āļāļēāļĢāļ—āļĩāđˆāļ„āļĨāđ‰āļēāļĒāļāļąāļ™āđ„āļ›āđƒāļŠāđ‰āđƒāļ™āļšāļĢāļīāļĐāļąāļ—āļ‚āļ­āļ‡āļ„āļļāļ“ āļ‚āļ­āļšāļ„āļļāļ“āļŠāļģāļŦāļĢāļąāļšāļ„āļ§āļēāļĄāļŠāļ™āđƒāļˆ!

āļ›.āļĨ. āļ‰āļąāļ™āļ­āļĒāļēāļāļˆāļ°āļ‚āļ­āļšāļ„āļļāļ“āđ€āļžāļ·āđˆāļ­āļ™āļĢāđˆāļ§āļĄāļ‡āļēāļ™āļ‚āļ­āļ‡āļ‰āļąāļ™ Sergey Kurbanov āđāļĨāļ° Nikolai Yusev āļŠāļģāļŦāļĢāļąāļšāļ„āļ§āļēāļĄāļŠāđˆāļ§āļĒāđ€āļŦāļĨāļ·āļ­āļ”āđ‰āļēāļ™āđ€āļ—āļ„āļ™āļīāļ„āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļāļēāļĢāļ™āļģāđāļ™āļ§āļ„āļīāļ”āļāļēāļĢāļ—āļ”āļŠāļ­āļšāđ‚āļŦāļĨāļ”āļĄāļēāđƒāļŠāđ‰āđƒāļ™āļšāļĢāļīāļĐāļąāļ—āļ‚āļ­āļ‡āđ€āļĢāļē

āļœāļđāđ‰āđ€āļ‚āļĩāļĒāļ™: āļ•āļīāļĄāļđāļĢāđŒ āļāļīāļĨāļĄāļļāļĨāļĨāļīāļ™ - āļĢāļ­āļ‡ āļŦāļąāļ§āļŦāļ™āđ‰āļēāļāđˆāļēāļĒāđ€āļ—āļ„āđ‚āļ™āđ‚āļĨāļĒāļĩāđāļĨāļ°āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļžāļąāļ’āļ™āļē (DevOps) āļ—āļĩāđˆ Positive Technologies

āļ—āļĩāđˆāļĄāļē: will.com

āđ€āļžāļīāđˆāļĄāļ„āļ§āļēāļĄāļ„āļīāļ”āđ€āļŦāđ‡āļ™