Home
Explore
Submit Search
Upload
Login
Signup
Advertisement
Check these out next
Infragistics Web Day 2017 - 継続的な開発を支える テスト自動化技術
Tatsuya Ishikawa
メルカリの開発スピードと品質を支える Selenium on Azure Kubernetes Service
Tadashi Nemoto
Visual Studio OnlineとUnityを使ったバージョン管理と継続的インテグレーション
Kaoru NAKAMURA
Visual Studio OnlineとUnityを使った バージョン管理と 継続的インテグレーション
Kaoru NAKAMURA
Test automation strategy for .net core 3 transition
Tatsuya Ishikawa
そろそろレガシーな.Net開発をやめなイカ?
Yuta Matsumura
Empower Every App, Every Developer ~ 統合開発プラットフォーム Visual Studio の進化 ~
Akira Inoue
Visual Studio ~ 過去、現在、そして未来
Akira Inoue
1
of
19
Top clipped slide
burikaigi2023
Mar. 18, 2023
•
0 likes
0 likes
×
Be the first to like this
Show More
•
14 views
views
×
Total views
0
On Slideshare
0
From embeds
0
Number of embeds
0
Download Now
Download to read offline
Report
Technology
BuriKaigi2023のセッションで使ったスライドです
Tatsuya Ishikawa
Follow
株式会社Codeer
Advertisement
Advertisement
Advertisement
Recommended
Developer summit codeer
Tatsuya Ishikawa
643 views
•
48 slides
Selenium IDE for primer
yasukoS
1.8K views
•
66 slides
【Agile Conference tokyo 2011】 継続的フィードバック
智治 長沢
1.6K views
•
42 slides
Team Foundation Server ~ 今を生きるエンジニアのための開発基盤とは 【BPStudy #63】
智治 長沢
1.7K views
•
33 slides
.Net技術でこれからも食べていくための技術戦略
Yuya Yamaki
1.9K views
•
48 slides
20160308 私とVisual Studio
Takayoshi Tanaka
139 views
•
14 slides
More Related Content
Similar to burikaigi2023
(20)
Infragistics Web Day 2017 - 継続的な開発を支える テスト自動化技術
Tatsuya Ishikawa
•
749 views
メルカリの開発スピードと品質を支える Selenium on Azure Kubernetes Service
Tadashi Nemoto
•
583 views
Visual Studio OnlineとUnityを使ったバージョン管理と継続的インテグレーション
Kaoru NAKAMURA
•
3.9K views
Visual Studio OnlineとUnityを使った バージョン管理と 継続的インテグレーション
Kaoru NAKAMURA
•
549 views
Test automation strategy for .net core 3 transition
Tatsuya Ishikawa
•
1.1K views
そろそろレガシーな.Net開発をやめなイカ?
Yuta Matsumura
•
15.8K views
Empower Every App, Every Developer ~ 統合開発プラットフォーム Visual Studio の進化 ~
Akira Inoue
•
1.2K views
Visual Studio ~ 過去、現在、そして未来
Akira Inoue
•
2.6K views
5minQues - SWET近況報告
Masaki Nakagawa
•
5.9K views
でぶさみ夏2013 キーノート オレンジレンジャーの資料
Tomohiro Fujii
•
2.7K views
ビジネス的に高価値なアジャイルテスト
Tsutomu Chikuba
•
2.1K views
[Japan Tech summit 2017] APP 001
Microsoft Tech Summit 2017
•
243 views
Stack2017 自動化困難な状況での活動方法
Tatsuya Ishikawa
•
4.6K views
3 倍早い?! MS 製開発者専用ツールによる HTML5 + JavaScript を使ったWeb 作成
Osamu Monoe
•
1.5K views
価値あるシステムテスト自動化の実現By friendly
Tatsuya Ishikawa
•
28.5K views
【17-D-6】.NETアセンブリの宿命
Developers Summit
•
925 views
Planning Effective Test Plan
Kazushi Kamegawa
•
2.6K views
ワンクリックデプロイ101 #ocdeploy
Ryutaro YOSHIBA
•
12.9K views
Blendの便利機能振り返り
一希 大田
•
2.4K views
CLR/H 第 79 回勉強会での LT
Shin-ya Koga
•
819 views
More from Tatsuya Ishikawa
(15)
Test to net core 3
Tatsuya Ishikawa
•
403 views
メタな感じのプログラミング(プロ生 + わんくま 071118)
Tatsuya Ishikawa
•
1.2K views
Dot netconf2017 - VS拡張
Tatsuya Ishikawa
•
1.1K views
.Netconf
Tatsuya Ishikawa
•
3.2K views
Stac2014 石川
Tatsuya Ishikawa
•
33.8K views
Bindingからframework elementを見つける
Tatsuya Ishikawa
•
6.2K views
boost - std - C#
Tatsuya Ishikawa
•
2.9K views
【SQiP2014】システム操作インターフェイス最適化によるテスト自動化ROI向上
Tatsuya Ishikawa
•
10.3K views
Friendlyで始めるwindowsアプリシステムテスト自動化+内部使用技術解説
Tatsuya Ishikawa
•
13.7K views
Windowsアプリテスト自動化 [Friendly+delphi]
Tatsuya Ishikawa
•
1.2K views
Ride on azure~アイデアソン編~
Tatsuya Ishikawa
•
802 views
私とC++ in 例外安全day
Tatsuya Ishikawa
•
2K views
他言語との連携(ネイティブから動的言語まで)
Tatsuya Ishikawa
•
2.8K views
Friendlyを使ったwindowsアプリテスト自動化
Tatsuya Ishikawa
•
12.3K views
XP祭り2013-LT-Codeer
Tatsuya Ishikawa
•
2K views
Advertisement
Recently uploaded
(20)
OIDC(OpenID Connect)について解説③
iPride Co., Ltd.
•
24 views
通信プロトコルについて
iPride Co., Ltd.
•
7 views
20230523_IoTLT_vol99_kitazaki_v1.pdf
Ayachika Kitazaki
•
112 views
OpenJDKのコミッタってどんなことしたらなったの?解決してきた技術課題の事例から見えてくる必要な知識と技術(JJUG CCC 2023 Spring)
NTT DATA Technology & Innovation
•
31 views
ヘッドレス化したbaserCMS5とその機能
Ryuji Egashira
•
10 views
ChatGPT + LlamaIndex 0 .6 による チャットボット の実装
Takanari Tokuwa
•
56 views
20230601_Visual_IoTLT_vol14_kitazaki_v1.pdf
Ayachika Kitazaki
•
67 views
社内ソフトスキルを考える
infinite_loop
•
85 views
Oracle Cloud Infrastructure:2023年5月度サービス・アップデート
オラクルエンジニア通信
•
31 views
【DL輪読会】Poisoning Language Models During Instruction Tuning Instruction Tuning...
Deep Learning JP
•
85 views
コードレビュー改善のためにJenkinsとIntelliJ IDEAのプラグインを自作してみた話
Rakuten Group, Inc.
•
0 views
統計学の攻略_正規分布ファミリーの全体像.pdf
akipii Oga
•
222 views
Kubernetes超入門
Takashi Suzuki
•
5 views
AIEXPO_CDLE名古屋紹介
KotaMiyano
•
3 views
TestSIP (1).pdf
DeependraSingh712859
•
2 views
Üslup ve tercüme.pdf
1Hmmtks
•
2 views
【DL輪読会】DINOv2: Learning Robust Visual Features without Supervision
Deep Learning JP
•
41 views
Wandb LLM Webinar May 30 2023 (配布用).pdf
Yuya Yamamoto
•
3 views
触感に関わる共感覚的表現と基本6感情の対応関係の検証
Matsushita Laboratory
•
15 views
JSONEncoderで詰まった話
とん とんぼ
•
143 views
burikaigi2023
Blazor.WebAssemblyを実案件で使ってみた SeleniumでE2Eのテストも作ったよ
石川達也 Codeer代表取締役 →社員募集中 プログラマ(C, C++, C#) テスト自動化ライブラリ/ツール開発 Microsoft
MVP 2014~ 趣味はギターとOSSライブラリ作成 Twitter: @StoneGuitar777 自己紹介
家にギターがあるのに弾かない娘・・・ ぼざろを娘に布教中
Windowsアプリを意のままに操作するためのライブラリ 弊社製品FriendlyはMicrosoft MVP Showcaseで2位になりました。 http://blogs.msdn.com/b/mvpawardprogram/archive/2014/11/04/mvp-showcase-winners.aspx IPAの「先進的な設計・検証技術の適用事例報告書
2015年度版」に掲載。 http://www.ipa.go.jp/sec/reports/20151118.html Friendly
Seleniumのラッパーライブラリ 使いやすさの向上 待ち処理 便利な要素特定機能 Selenium.StandardControls
// TestAssitantPro Windows App Web Code
と Tool のシナジー効果! あなたのプロジェクトに Just Fit!
【メリット】 ・C#で書ける! ・Visual Studioだけでいける! Blazor 【デメリット】 JavaScript連携が面倒 (Reactと比べちゃうとね・・・) ↓ JavaScriptの既存ライブラリを使うのは大変 (現実的にはあんまりやりたくない) 結局はメンバーのスキルセット次第 ただ、C#技術者が多い場合の選択肢としてかなりアリ
・いくつかはJavaScriptライブラリのラッパーが提供されている ・Blazor独自のも多々ある ・おなじみのGrapecityさん、Infragisticsさん 今回使ったのは ・Blazored.LocalStorage ・Sotsera.Blazor.Toaster Blazor Nugetで沢山のライブラリが公開されている
Blazor フロントでDIとC#のイベント使えたのは良かった 例えばHttp通信の時のローディング出したいとき LoadingComponent HttpService LoadingService event DI サンプルコード
サイドバーとかヘッダーと Pageの通信にも使える Blazor
認証が社内システムで使うには重厚すぎる・・・ そしてフロントがWebAssemblyではない Cookie認証とCRLF ↓ @jsakamoto https://qiita.com/jsakamoto/items/bb57cff432af3db866c8 Burikaigiサンプル https://github.com/Ishikawa-Tatsuya/Burikaigi2023 Blazor
最終的にはDOMになるので問題なくテストできる Seleniumでテスト スクショ E2EのテストもC#で書ける VisualStudioでいける
Seleniumの代替 今回使ってないけど流行り 流行には逆らえないので調査の必要あり Seleniumでテスト デモ
【Webアプリは基本ステートレス】 ・データ変更系(Write)のテスト ・参照、検索系(Read)のテスト のどちらなのかを明確にする Writeはできるだけシンプルなデータ構成にして書き込みがある部分は毎回クリア Readは作って触らないという戦略もあり (毎回入れ直しももちろんあり、プロジェクトに合わせて) Seleniumでテスト データ戦略
Readの方がデータが複雑になりがち アプリで入れた方が簡単な場合も多い データのBkはとっておいて復元可能にしておく データが不変なので同時に実行しても問題ない Seleniumでテスト データ戦略 R W
時間に関するもの →仕様でてスタビリティを確保しておくことが大事 Seleniumでテスト 例えば今日から5日間とか 可変にできる仕様にしておくとデータの作り直しがいらない 画面表示時にデフォルトで今日から5日になるように入れればOK →
Selenium.StandardControls public class 魚一覧
: PageBase { LabelDriver Label_名前 => ByText("label", "名前").Wait(); LabelDriver Label_網 => ByText("label", "綱").Wait(); LabelDriver Label_目 => ByText("label", "目").Wait(); LabelDriver Label_科 => ByText("label", "科").Wait(); LabelDriver Label_属 => ByText("label", "属").Wait(); LabelDriver Label_星 => ByText("label", "星").Wait(); public ButtonDriver 検索 => ByText("検索").Wait(); public ButtonDriver 新規登録 => ByText("新規登録").Wait(); public TextBoxDriver 名前 => Label_名前.FindNext(By.TagName("input")).Wait(); public TextBoxDriver 網 => Label_網.FindNext(By.TagName("input")).Wait(); public TextBoxDriver 目 => Label_目.FindNext(By.TagName("input")).Wait(); public TextBoxDriver 科 => Label_科.FindNext(By.TagName("input")).Wait(); public TextBoxDriver 属 => Label_属.FindNext(By.TagName("input")).Wait(); public TextBoxDriver 星 => Label_星.FindNext(By.TagName("input")).Wait(); public ItemsControlDriver<魚一覧のリスト一行> テーブル => ByTagName("tbody").Wait(); public 魚一覧(IWebDriver driver) : base(driver) { } } 特定と待ち
public class 魚一覧のリスト一行
: ComponentBase { public IWebElement 名前 => ByXPath("td[1]").Wait().Find(); public IWebElement 網 => ByXPath("td[2]").Wait().Find(); public IWebElement 目 => ByXPath("td[3]").Wait().Find(); public IWebElement 科 => ByXPath("td[4]").Wait().Find(); public IWebElement 属 => ByXPath("td[5]").Wait().Find(); public IWebElement 生息環境 => ByXPath("td[6]").Wait().Find(); public IWebElement 食性 => ByXPath("td[7]").Wait().Find(); public IWebElement 星 => ByXPath("td[8]").Wait().Find(); public ButtonDriver 編集 => ByXPath("td[9]").ByTagName("button").Wait(); public 魚一覧のリスト一行(IWebElement element) : base(element) { } public static implicit operator 魚一覧のリスト一行(ElementFinder finder) => finder.Find<魚一覧のリスト一行>(); } Selenium.StandardControls
デモ
Advertisement