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

Rosetta 2.0 Test — Round 1 #869

Closed
29 tasks done
liammulh opened this issue Dec 17, 2022 · 18 comments
Closed
29 tasks done

Rosetta 2.0 Test — Round 1 #869

liammulh opened this issue Dec 17, 2022 · 18 comments
Assignees
Projects

Comments

@liammulh
Copy link
Member

liammulh commented Dec 17, 2022

@KatieWoe, @kathy-phet, @oliver-phet, and @jbphet, Rosetta 2.0 is feature-complete and ready for testing.

There are two main objectives to this test:

  1. Ensure Rosetta 2.0 has the same basic functionality as the old translation utility.
  2. Ensure Rosetta 2.0's new features work as intended.

This might sound simple, but there's a lot behind both of these objectives. We will test in phases.

Think of the checkboxes as "bare minimum" testing. It be good to do a bit of "dev" testing where you're just trying to break things. It would also be good to do a bit of "RC" testing where you verify things are behaving the same on different browsers. We don't really care about mobile devices.

Also, QA has a set of "testing" logins to the PhET website. You might want to use those for testing as if you aren't a team member, but you are a trusted translator.

As always, feel free to ask questions. Since @jbphet is busy trying to get Greenhouse out the door, please direct questions to me.

We might have another phase where we actually have some builds done when you hit the publish button, but this will require coordination with Jonathon Olson and Matt Pennington, and we'll need to be careful about the configuration and which sims we publish.

The test can be accessed by going to https://ox-dev.colorado.edu/translate. @mattpen is testing working on the sign-in to the website, so it's possible you'll have trouble signing in at some point.

At some point, ideally during phase 1, it would be great if we could get @solaolateju and/or @DianaTavares to do a bit of testing. I will ping them on Slack on Monday.

Assigning @kathy-phet for prioritization.

As of this writing (11 PM Friday night), I'm not able to sign in to Ox-Dev, and Rosetta seemingly can't hit the website user data route on Ox-Dev. Right now, Rosetta is configured to use https://phet-direct-dev.colorado.edu/user/check-login as the website user data route. Hopefully @mattpen can take a look on Monday morning.

@KatieWoe, I wasn't sure what labels to add, so I didn't add any, but if you think it needs certain labels, please add them.

Phase 1: Test New Features

Be aware that the publish button is not meant to be working during this phase.

  • I will configure Rosetta to not perform string commits.
  • I will configure Rosetta to not send build requests.
  • I will configure Rosetta to have it's Babel branch be master.
  • QA will:
    • ensure the translation "report" i.e. the stats for each sim in a
      given locale load properly
    • spot-check a handful of the stats to ensure they are accurate
      • To do this, QA will have to look at the translated string file in
        Babel. If they really want to be thorough, they can count the
        total number of strings in the published sim. If they want to do
        this, they should ask me for a copy of the strings file for the
        published sim.
    • ensure the translation reports are cached
    • ensure the tables are sortable
      • ❎ ensure the sorting is correct
    • ensure the translation "form" shows errors when placeholders
      don't match
    • ensure the save, publish, and test buttons are disabled when
      there are form errors
    • ensure the copy button copies the English string over

Phase 2: Test Old Features

Be aware that during this phase, the publish button should work, and it will commit strings to the test branch of Babel.

  • I will configure Rosetta to perform string commits.
  • I will configure Rosetta to not send build requests.
  • I will configure Rosetta to have it's Babel branch be tests.
  • QA will:
    • ensure they can publish a translation and see the results on
      Babel
    • ❎ ensure the simulation you published has a "(pending update)"
      badge next to it
      • this should go away after 2 * SIM_METADATA_VALID_DURATION or ten
        minutes, whichever is the greater
    • ensure the save button saves their translation
    • ❎ ensure that once they've published a translation, and then
      wait about ten minutes, they see the strings from Babel, not strings
      they saved
      • To test this, save a translation, modify the saved translation,
        publish it, and then wait ten minutes. When you come back, you
        should see the strings that are in Babel in the form rather than your
        saved strings. (The saved translation should be deleted from the
        database when you publish.)

Phase 3: Test Down for Maintenance / Sign-In / Permissions

Phase 3 Part A

  • I will configure Rosetta to show its "Down for Maintenance" page.
  • QA will:
    • ensure they see a message about the translation utility being
      down for maintenance
    • ensure they can't access /translate/{locale}
    • ensure they can't access /translate/{locale}/{sim-name}
    • ensure they can't access /translate/admin

Phase 3 Part B

  • I will configure Rosetta to be enabled.
  • I will configure Rosetta to not perform string commits.
  • I will configure Rosetta to not send build requests.
  • I will configure Rosetta to have it's Babel branch be master.
  • QA will:
    • ensure that someone who isn't a trusted translator or a team
      member can't access the translation utility
    • ensure that team members who aren't trusted translators can
      access the translation utility
    • ensure that trusted translators who aren't team members can
      access the translation utility
@liammulh liammulh added this to Upcoming Tests (by priority) in QA Pipeline via automation Dec 17, 2022
@kathy-phet kathy-phet moved this from Upcoming Tests (by priority) to Active Tests (max 5, by priority) in QA Pipeline Dec 20, 2022
@stemilymill
Copy link
Contributor

for phase 1 testing: I used win10 chrome and Nancy used MacOS 13 Safari 16

@DianaTavares
Copy link

Hi team!
Glad to see that Rosetta is coming along! Here are some comments about my review as user:

I really like the view and the new features! The first time I access, it takes some time to load all the information about the percentage of the strings translated in that locale, but the second time, it was faster, looks like is saving some data.

I like the links to go back to the Sims list and the Select Locale.

I said @liammulh that in the beginning I thought that this button will copy the English string to the clipboard for me to paste it in Google Translate for example. But no, this button put the English string to the Translation. A tooltip will be enough to solve this confusion, but I am still thinking that a functionality that allow to copy the English strings to the clipboard is also super useful to think in a future improvement.
image

I also think that the Save, Publish and Test buttons need to be always visible while we are translating. It is not a good user experience to have to scroll up or down to access this buttons. Also, a button that said, “Go to the top” always visible can be good! It is not a good experience to finish translating a sim, you want to move to another sim or go back to the list of sims/locales, and need to scroll all the way up.

It is possible to have the information in the picture always visible while we are translating the strings? I always give a fast scroll up-down to be sure that I translate all strings, but having this information, I think, is more efficient.
image

I use control+f to look for the sim I want to translate, but probably a search option cool be a good idea, specially for tablets, but I know that this is more for computer users.

When I clicked the buttons in the picture I expected to see the list to reorder for the sim with less or more strings, or less or more common strings, but no, the list reorder alphabetic. It is the behavior expected for the same button in the “Sim title”, but in the other column titles it was strange. Looks like these buttons are only useful in the “translated sims” table, where it reorders the sims according to the %.
image

Is normal that when I test a sim, the tab loos like is always loading?
image

I have to accept that I didn't see the “Translation saved” message the first time. It has the same color that the page and appears at the top of the page. I finish translating something in the bottom of the page, click Save, and didn't realize why I couldn't scroll the page until I saw the small window. Probably move it to the center of the page with a more colorful ackgorund, or just close to the Save button.
image

These are all my comments. Amazing job team!

@solaolateju
Copy link

Great work @liammulh. It's so nice to see the progress.
Following the review of the translation utility, the copy button, placeholder message, and inactive buttons (test, save, publish) all work.

Phase 1:

  • Sorting: In the "not yet translated" list, "Sim-Specific Strings" seem to sort by "Sim Title". Understandably, since the translated string percentages are equal. Sorting by this list might not be necessary.
    When a translator saves their progress but did not publish the sim, will it remain in the "not yet translated" or "translated" list? Staying in the "not yet translated" list will make the list sortable and address this concern.

  • I did not test caching of the translation reports.

Others Out of scope(phase 1);

  • Prompt user to save to avoid losing when "Back to Yoruba (yo) Sim List" is clicked with unsaved content.

@liammulh
Copy link
Member Author

I use control+f to look for the sim I want to translate, but probably a search option cool be a good idea, specially for tablets, but I know that this is more for computer users.

I think adding a search feature would increase the complexity of the client-side code significantly and it would really only be a feature for people who translate on tablets, so I'm very reluctant to add this. Also, it's possible to search web pages on mobile now, at least in Safari on iOS.

When I clicked the buttons in the picture I expected to see the list to reorder for the sim with less or more strings, or less or more common strings, but no, the list reorder alphabetic. It is the behavior expected for the same button in the “Sim title”, but in the other column titles it was strange. Looks like these buttons are only useful in the “translated sims” table, where it reorders the sims according to the %.

The sim title button sorts according to sim title, the sim-specific column sorts according to sim-specific percentage, and the common button sorts according to common percentage. @DianaTavares, what is confusing about the buttons?

It's true the sim-specific button in the untranslated table doesn't really do anything since all of the sims have 0 percent. We could disable that button or make it so that it doesn't do anything. @DianaTavares, what do you think about this?

Is normal that when I test a sim, the tab loos like is always loading?

image

No, I don't think that's normal. I think that needs an issue.

I have to accept that I didn't see the “Translation saved” message the first time. It has the same color that the page and appears at the top of the page. I finish translating something in the bottom of the page, click Save, and didn't realize why I couldn't scroll the page until I saw the small window. Probably move it to the center of the page with a more colorful ackgorund, or just close to the Save button.

We don't have control over where the pop-up happens. It's controlled by the web browser. In a future release, we could create and position our own modal, I think.

@DianaTavares
Copy link

It is ok without a search option.

My confusion about the sort buttons is that in the no translated sim they don't do anything because all the percentages are 0%. I like the idea of disable them (or delete them from this table). Because buttons that don't do anything make think that something is wrong.

I understand the pop-up comment. It is ok if we can't control its position.

Thanks for answer all my comments!!

@liammulh
Copy link
Member Author

In the "not yet translated" list, "Sim-Specific Strings" seem to sort by "Sim Title". Understandably, since the translated string percentages are equal. Sorting by this list might not be necessary.

Noted. I made phetsims/rosetta#340 for this.

When a translator saves their progress but did not publish the sim, will it remain in the "not yet translated" or "translated" list? Staying in the "not yet translated" list will make the list sortable and address this concern.

Saving the translation will not affect whether it is in the "not yet translated" or "translated" list. It also won't affect the statistics for the number of strings translated. The "not yet translated" or "translated" lists can only change if you click the publish button. Similarly, the string statistics can only change if you click the publish button.

Prompt user to save to avoid losing when "Back to Yoruba (yo) Sim List" is clicked with unsaved content.

This is a feature we plan to add, but not for this version of Rosetta, unfortunately. This issue is tracked in phetsims/rosetta#325.

Actually, now that I think about it, we could add an alert just for clicking the "Back to {Locale} {locale-code}" link. It wouldn't handle the case if someone clicked a different link or if they tried to close the tab.

@liammulh
Copy link
Member Author

Thank you @DianaTavares and @solaolateju for all of your feedback! I appreciate it! :)

@liammulh
Copy link
Member Author

liammulh commented Dec 21, 2022

I'm going to use this comment to track the issues that have come out of testing and what I plan on doing about them.

Issue Blocks publication? Actionable? Done and ready for testing?
phetsims/rosetta#331 Yes Yes
phetsims/rosetta#332 Yes Yes
phetsims/rosetta#334 Yes Yes
phetsims/rosetta#335 No N/A N/A
phetsims/rosetta#336 No N/A N/A
phetsims/rosetta#337 No N/A N/A
phetsims/rosetta#338 No N/A N/A
phetsims/rosetta#339 No N/A N/A
phetsims/rosetta#340 Yes Yes
phetsims/rosetta#341 No N/A N/A
phetsims/rosetta#342 Yes Yes
phetsims/rosetta#343 No N/A N/A
phetsims/rosetta#344 Yes Yes
phetsims/rosetta#345 Yes Yes
phetsims/rosetta#346 No N/A N/A
phetsims/rosetta#347 Yes Yes
phetsims/rosetta#348 Yes Yes
phetsims/rosetta#350 Yes Yes

liammulh added a commit to phetsims/rosetta that referenced this issue Dec 21, 2022
liammulh added a commit to phetsims/rosetta that referenced this issue Dec 21, 2022
Add prompt to save when user clicks the "Back to {locale} {locale-code}
Sim List" button.

See #341.

Part of phetsims/qa#869.
liammulh added a commit to phetsims/rosetta that referenced this issue Dec 21, 2022
liammulh added a commit to phetsims/rosetta that referenced this issue Dec 21, 2022
liammulh added a commit to phetsims/rosetta that referenced this issue Jan 4, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Jan 4, 2023
@liammulh
Copy link
Member Author

liammulh commented Jan 6, 2023

All issues have been addressed. Closing.

@liammulh liammulh closed this as completed Jan 6, 2023
QA Pipeline automation moved this from Dev & RC: ready for next steps to Done Jan 6, 2023
@liammulh liammulh changed the title Rosetta 2.0 Test Rosetta 2.0 Test — Round 1 Jan 6, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
Add prompt to save when user clicks the "Back to {locale} {locale-code}
Sim List" button.

See #341.

Part of phetsims/qa#869.
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
If there are no string keys for a given key type (sim-specific, shared,
or common), we set the number of translated strings in the form to 0.

For #345.

Came out of phetsims/qa#869.
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
This commit just adds the `<td>` cells with shared stats. We still need
to wire things up to handle shared stats.

For #347.

Came out of phetsims/qa#869.
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
Show stats in the report table. Still need to wire things up for
sorting.

For #347.

Came out of phetsims/qa#869.
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
The commit before this introduced an issue where the shared stats
weren't showing for sims in the "unpublished" table. This commit fixes
that.

For #347.

Came out of phetsims/qa#869.
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
liammulh added a commit to phetsims/rosetta that referenced this issue Feb 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

No branches or pull requests

6 participants