Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ユーザー一覧ページの絞り込みにおける現役生と研修生のルールを整理 #7619

Merged

Conversation

unikounio
Copy link
Contributor

@unikounio unikounio commented Mar 30, 2024

Issue

概要

ユーザー一覧ページの絞り込みタブを次のように整理しました。

  • 変更前
    「現役生」タブを選択すると現役生と研修生が表示される。
  • 変更後
    • 「現役 + 研修生」タブを選択すると現役生と研修生が表示される
    • 「現役生」タブを選択すると現役生だけが表示される
    • 「研修生」タブの表示位置を現役生の隣に変更

変更確認方法

  1. feature/update-users-filtering-rules-about-student-and-traineeをローカルに取り込む
  2. bin/setupを実行
  3. foreman start -f Procfile.devでサーバーを立ち上げる
  4. メンターアカウント(komagata等)でログインし、/usersにアクセス
  5. 絞り込みタブから「現役生」をクリックし、次の作業を行う
    1. ページタイトル横の数値をメモする
    2. 現役生のユーザーのみが表示されることを確認する
  6. 絞り込みタブから「研修生」をクリックし、ページタイトル横の数値をメモする
  7. 絞り込みタブから「現役 + 研修生」をクリックし次の点を確認する
    1. ページタイトル横の数値が現役生 + 研修生となっている
    2. 現役生と研修生のユーザーが表示される

Screenshot

変更前

#7614(変更前)

変更後

#7614(変更後)1

#7614(変更後)2

@unikounio unikounio self-assigned this Mar 30, 2024
@unikounio unikounio marked this pull request as ready for review March 30, 2024 11:02
@unikounio unikounio requested a review from 88-99 March 30, 2024 11:04
@unikounio
Copy link
Contributor Author

@88-99 さん
お疲れ様です!
こちらのPRのレビューをお願いさせていただきたくてご連絡させていただきました🙏
ご対応可能なようでしたら、お手すきの際にでもご確認いただけますと幸いです。
よろしくお願いいたします。

@88-99
Copy link

88-99 commented Mar 30, 2024

@unikounio
お疲れ様です。
今週中でも大丈夫でしたらお受けできますがいかがでしょうか?
もし急ぐようでしたら、他の方にお願いいたします。

@unikounio
Copy link
Contributor Author

@88-99 さん
ご連絡ありがとうございます~
急ぎませんので、是非よろしくお願いします🙏

Copy link

@88-99 88-99 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@unikounio
お待たせして申し訳ございません。
フィルタリングの挙動は問題ないように思いました。
テストで気になった点を3つコメントさせていただきました。ご確認よろしくお願いいたします。

visit_with_auth '/users', 'komagata'
click_link '現役 + 研修生'

assert_selector('a.tab-nav__item-link', text: '現役 + 研修生')
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

.is-activeが抜けていませんでしょうか? 現役 + 研修生以外のタグに変更してもテストが通りました。

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

おっしゃる通り、抜けていました😅
修正させていただきました~🙏

click_link '現役生'

assert_selector('a.tab-nav__item-link.is-active', text: '現役生')
assert_text '現役生'
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

assert_text '現役 + 研修生'と同じで、そちらにコメントさせていただきました。

click_link '現役 + 研修生'

assert_selector('a.tab-nav__item-link', text: '現役 + 研修生')
assert_text '現役 + 研修生'
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

こちらの意図をお伺いしたいです。ページ内には'現役 + 研修生'以外にも全てのタグが表示されているので、どのタグでもassert_textはtrueを返すと思うのですが、いかがでしょうか?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

申し訳ないのですが、ご質問の内容についてわからない部分があったので確認させてください🙏

こちらは「assert_selectorでは現役 + 研修生という文字列の表示を確認しているわけではないので、assert_textで表示について確認する必要がある」という意図で書いたテストコードです。

ページ内には'現役 + 研修生'以外にも全てのタグが表示されているので、どのタグでもassert_textはtrueを返す

こちらおっしゃる通り、assert_textの対象文字列を変えればどのタグでもtrueは返すと思います。
テスト対象であるタグの表示が確認できればいいと考えて書いたのですが、すべてのタグについてテストすべきということでしょうか?あるいはこのテストコードは不要ということでしょうか?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@unikounio
ご確認ありがとうございます。
私もunikounioさんがされようとしていることが理解できていなかもしれません。

あるいはこのテストコードは不要ということでしょうか?

不要かなと思いました。

_development__全てのユーザー___FBC

こちらは「assert_selectorでは現役 + 研修生という文字列の表示を確認しているわけではないので、

『現役 + 研修生という文字列の表示』とは画像②のことを仰っていますか?

私の認識ですが、

  • assert_selector('a.tab-nav__item-link', text: '現役 + 研修生')ではテキストが現役 + 研修生のリンクがあること(画像①)を確認している。
  • assert_text '現役 + 研修生'では画像①と画像②どちらにもヒットしてしまうので、②が「卒業生」でも①でtrueになる。

click_link '現役 + 研修生'現役 + 研修生のリンク(タグ?)があることはわりますし(なければクリックできずエラーになる)、assert_selector('h1.page-main-header__title', text: '現役 + 研修生')現役 + 研修生のフィルタがかかってますよというのだけ(画像②)確認すれば良いのではないかと思いました。

- assert_selector('a.tab-nav__item-link', text: '現役 + 研修生')
- assert_text '現役 + 研修生'
+ assert_selector('h1.page-main-header__title', text: '現役 + 研修生')

間違ってたらすみません。

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

丁寧なご説明ありがとうございます!

assert_selector('a.tab-nav__item-link', text: '現役 + 研修生')ではテキストが現役 + 研修生のリンクがあること(画像①)を確認している。

この点について誤解していました💦
display: noneが設定されている等で画面に表示されていなくてもテストが通ってしまうものと思っていました😅
お返事するときも確認したはずなのですが気づけず😭ご迷惑をおかけしました🙏

ご提示いただいた形で修正させていただきました~

@unikounio unikounio force-pushed the feature/update-users-filtering-rules-about-student-and-trainee branch from 11fdebe to b7321b2 Compare April 7, 2024 08:06
Copy link
Contributor Author

@unikounio unikounio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@88-99 さん
ご確認ありがとうございます!✨
コメントいただいた点について対応させていただきました。
お手すきの際にご確認をお願いいたします🙏

@@ -17,7 +17,7 @@
.users-item__header-start
.users-item__icon
= link_to user.url
span class="a-user-role"
Copy link
Contributor Author

@unikounio unikounio Apr 7, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

#7426 のマージに伴いユーザーロールが渡されなくなっていたようなので修正しました。
「期生別」タブではユーザーロールが渡されているようなので変更しても大丈夫だろうと判断したのですが、こちらについてもご確認いただけますと幸いです(駒形さんのレビュー時にもご確認をお願いする予定です)。

【4/24追記】
同様の内容である#7665 がマージされたため、本PRで変更を行う必要がなくなりました。

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

元々あったのであれば、あっても良い気がしますね。

click_link '現役 + 研修生'

assert_selector('a.tab-nav__item-link', text: '現役 + 研修生')
assert_text '現役 + 研修生'
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

申し訳ないのですが、ご質問の内容についてわからない部分があったので確認させてください🙏

こちらは「assert_selectorでは現役 + 研修生という文字列の表示を確認しているわけではないので、assert_textで表示について確認する必要がある」という意図で書いたテストコードです。

ページ内には'現役 + 研修生'以外にも全てのタグが表示されているので、どのタグでもassert_textはtrueを返す

こちらおっしゃる通り、assert_textの対象文字列を変えればどのタグでもtrueは返すと思います。
テスト対象であるタグの表示が確認できればいいと考えて書いたのですが、すべてのタグについてテストすべきということでしょうか?あるいはこのテストコードは不要ということでしょうか?

visit_with_auth '/users', 'komagata'
click_link '現役 + 研修生'

assert_selector('a.tab-nav__item-link', text: '現役 + 研修生')
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

おっしゃる通り、抜けていました😅
修正させていただきました~🙏

@unikounio unikounio force-pushed the feature/update-users-filtering-rules-about-student-and-trainee branch from b7321b2 to b59593a Compare April 10, 2024 12:08
Copy link
Contributor Author

@unikounio unikounio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@88-99 さん
再度のご確認ありがとうございます!
修正させていただきましたのでご確認をお願いいたします🙏

Copy link

@88-99 88-99 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@unikounio
修正ありがとうございました。確認しました。
承認させていただきます。

@unikounio
Copy link
Contributor Author

@88-99 さん
丁寧にご確認いただきありがとうございました!
引き続きチームメイトとしてよろしくお願いいたします~😄

@unikounio
Copy link
Contributor Author

@komagata さん
お疲れさまです!
チームメイトからApproveいただきましたので、お手すきの際にレビューをお願いします🙏

Issueへの直接的な対応ではないのですが下記コメントの箇所を追加で変更しておりますので、ご確認いただけますと幸いです。
#7619 (comment)

@unikounio unikounio requested a review from komagata April 13, 2024 12:28
Copy link
Member

@komagata komagata left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

conflictの修正をお願い致します~。

@unikounio unikounio force-pushed the feature/update-users-filtering-rules-about-student-and-trainee branch from b59593a to debd573 Compare April 24, 2024 05:20
@unikounio
Copy link
Contributor Author

@komagata さん
ご確認ありがとうございます!
コンフリクト対応させていただきましたので、お手すきの際に再度ご確認をお願いいたします🙏

visit_with_auth '/users', 'komagata'
click_link '現役 + 研修生'

assert_selector('h1.page-main-header__title', text: '現役 + 研修生')
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

上のクリック前にもこのselectorの要素が存在する(中身は違う)とすると、JSでデータを取ってくる前の状態をチェックしてFlakyなテストになっちゃいそうな気がしました。

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@komagata さん
ご連絡ありがとうございます🙏
おっしゃる通りですね。テスト対象のタブがアクティブになっていることを確認できるように修正しました!
1つ前のコミットに戻すような形になったので、コミットの整理も行わせていただきました~

@unikounio unikounio force-pushed the feature/update-users-filtering-rules-about-student-and-trainee branch from debd573 to 6984d3c Compare May 1, 2024 16:12
@unikounio
Copy link
Contributor Author

@komagata さん
お疲れ様です!
コメントいただいいた点について対応させていただきましたので、お手隙の際にご確認をお願いいたします🙏
#7619 (comment)

Copy link
Member

@komagata komagata left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

確認させていただきました。OKです~👌

@komagata komagata merged commit b79fc6c into main May 28, 2024
3 checks passed
@komagata komagata deleted the feature/update-users-filtering-rules-about-student-and-trainee branch May 28, 2024 19:17
@github-actions github-actions bot mentioned this pull request May 28, 2024
18 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants