Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
CircleCI における UI テスト
Search
Masahiko Funaki(舟木 将彦)
March 11, 2022
Technology
0
11
CircleCI における UI テスト
CircleCI を使ってどうやって UI テストをするのか、ではなく、CircleCI の開発やリリース、デプロイにおいてどのように UI のテストを行なっているのかをご紹介したスライドです。
Masahiko Funaki(舟木 将彦)
March 11, 2022
Tweet
Share
More Decks by Masahiko Funaki(舟木 将彦)
See All by Masahiko Funaki(舟木 将彦)
Harness the Power of Advanced LLM and CI/CD Practices
mfunaki
0
320
CircleCI によるソフトウェア開発の品質向上と効率化の実現
mfunaki
0
190
CircleCI と Argo Rollouts で 実現する Kubernetes 上の プログレッシブデリバリー
mfunaki
0
95
はじめてのCircleCI
mfunaki
0
25
CircleCIでChatGPTにエラーの解説を頼んでみた
mfunaki
0
540
自動化→部品化すると社内開発は楽しくなる
mfunaki
0
35
テストの自動化~簡単に始める、みんなで使う、現況を捉える
mfunaki
0
36
テストの自動化 〜 簡単に始める、みんなで使う、現況を捉える
mfunaki
0
18
CircleCIで実現できる「高速、安全なソフトウェア開発」
mfunaki
0
160
Other Decks in Technology
See All in Technology
CysharpのOSS群から見るModern C#の現在地
neuecc
2
3.4k
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
150
OCI Vault 概要
oracle4engineer
PRO
0
9.7k
プロダクト活用度で見えた真実 ホリゾンタルSaaSでの顧客解像度の高め方
tadaken3
0
100
強いチームと開発生産性
onk
PRO
34
11k
インフラとバックエンドとフロントエンドをくまなく調べて遅いアプリを早くした件
tubone24
1
430
アジャイルでの品質の進化 Agile in Motion vol.1/20241118 Hiroyuki Sato
shift_evolve
0
150
サイバーセキュリティと認知バイアス:対策の隙を埋める心理学的アプローチ
shumei_ito
0
390
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
120
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
310
複雑なState管理からの脱却
sansantech
PRO
1
150
SSMRunbook作成の勘所_20241120
koichiotomo
2
150
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Building Your Own Lightsaber
phodgson
103
6.1k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Imperfection Machines: The Place of Print at Facebook
scottboms
265
13k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.3k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
Visualization
eitanlees
145
15k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5k
The Cult of Friendly URLs
andyhume
78
6k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Gamification - CAS2011
davidbonilla
80
5k
Transcript
1 CircleCI における UI テスト 注) 「CircleCI を使って、どうやって UI テストをするのか」ではありません。
舟木 将彦 (@mfunaki) Principal Developer Advocate / CircleCI
2 CircleCI をお使いいただいた事はありますか?
3 CircleCI は CircleCI で ビルド〜テスト〜リリース〜デプロイされている プラン コード ビルド テスト
リリース デプ ロイ 運用 監視 継続的インテグレーション (CI) 継続的 デプロイ (CD) 自動化できない 非正常系は 自動化できない 自動化できる→継続的であるために自動化すべき ビジネスが継続する限り、プロジェクトは続く 共有 リポジトリ上 で 常に作業 コード追加・修正時は 常にビルド・テスト (最後にまとめてやらな い→早く失敗すれば 早く品質が安定する) サービス停止せず常時 リリース/デプロイ (失敗時にはクイックに 修正 / 前バージョンに 戻せる)しくみ 運用・監視しやすい 品質をコードに反映 (必要なデータの取得、 スケーラビリティの 確保) CircleCI自体は E2Eテスト (UIテスト)の機能を 持たず、 E2Eテストツールと 連携して、 「テストを依頼」 「結果を取得」 可能 連携可能ツール例 • UIPath Test Suiteなどの 商用製品 • cypressなどの オープンソース ツール
4 どんな UI テストをしているのか Eコマースサイトのテストと違うポイント • ユーザーごとに表示内容や振る舞いが大きく異なる(情報が見える/見えない、 操作ができる/できない) →ログアウトしたり、別ユーザーでログインした時に前ユーザーの影響を受けない •
レコーディング&プレイ型のテストではなく、テストコードを書いて実行 Eコマースサイトと恐らく同じポイント • 「開発者やマネージャーであれば、こういった使い方をするだろう」という ユースケースに対応したテスト • 画面の種類数は一定個なので、種類ごとにオブジェクト定義し、 再利用性を高め、テストコードの記述を効率化する • 何が表示されているか+何が表示されていないか (無効化されているか) • Shift Left Testing (バグが生まれるのはコードが書かれた時 ) + Shift Right Testing (実際の行動を元に UX / DX ~ Developer eXperience ~ 向上)
5 UI テストも大事だけど、Unit テストも大事 フランスの Ponicode 社を買収(3/9) - JavaScript/TypeScript の
Unit テスト (Jestベース) - Python の Unit テスト(Pytestベース) を AI による提案を元に自動生成します。 VSCode 拡張 や IntelliJ プラグインとして動作 CLI も提供 (npm i -g ponicode) → CircleCI に統合を進めていきます
Thank you. 6