-
Notifications
You must be signed in to change notification settings - Fork 664
Add initial test procedures for WebUSB & BLE flashing. #6449
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
base: master
Are you sure you want to change the base?
Conversation
@abchatra is there a way to load MakeCode beta into the electron and the Windows store apps? |
No way for electron as it is packaged in. We will have electron build this week. For windows app, you can type /@beta in the extension search box which will load beta. |
Could both WebUSB and Bluetooth tests 1 and 2 be combined into one test, with test 2 as a last step, as below? I had performed Bluetooth test 1 on 8 combinations before I read test 2 must be preformed immediately after test 1! Should the webUSB tests specify starting hexes, like the Bluetooth tests, or at least starting with a live hex? WebUSB: For each browser:
Bluetooth flashing I guess a V1 and a V2 should be tested (except with the python hex). Do we need to test so many starting hexes? After USB flashing each starting hex, previous pairings should be deleted in Bluetooth settings, and in the iOS app Manage Connections page, before trying to Bluetooth flash, rather than deal with the errors that occur otherwise. I think we can test with a USB powered micro:bit, to rule out hitting problems caused by low batteries. Open the app
Bluetooth MY_DATA Suggestions:
With one micro:bit V2, use the Fetch MY_DATA button in My Programs to fetch datalogging results.
|
The Bluetooth flashing tests should include pairing with and flashing over a hex built in the MakeCode under test, which I have just done for iOS/Android + V1/V2 with MakeCode 8.0.8 partial flashes. And with a Bluetooth program to test full flash. |
Yes, my original intention was to separate the tests to be able to also test them independently, but it's better to combine them and have fewer steps overall.
Ah, yes, the full-flash step might not be tested correctly if the micro:bit had a MakeCode-under-test programme already. I'll add a step to flash the "meet the microbit" programme or a different hex.
Unfortunately I think we want to be safe, as there are classrooms with tablets that need flash the micro:bit with the factory image always with bluetooth.
Is this something that we expect users to do? Would the app do this automatically or provide instructions to the user to do this?
Sounds good, I'll add it as well.
Is this step always needed? Even if the pattern is the same?
Yeah, I was thinking logging as quickly as possible would always guarantee have quite a bit of data on the log, but it's not really necessary, so I'll add a small delay which ensure it takes a bit longr to fill the storage and still provide plenty of entries by the time it is read via BLE.
Sorry, I'm not sure I understood this one.
Ah, that's a good catch! I'll add something as well. |
ba5d91d
to
96e012e
Compare
I've pushed the changes I've made so far, still need to add this part, but I'll probably need to leave it to next week, as I should continue doing some beta testing:
|
My thought was mainly: how are these hexes different from one another from the USB flashing point of view?
No, but the main flow of the apps is not aimed at users who keep USB flashing hexes., losing the pairing information.
Same reason as above. It makes the app redo pairing rather than hitting an error to then come back and redo pairing
I'm not sure why we need lots of data.
This tests that the config flags are set so the utility service can be available in application mode when required, as well as in Bluetooth mode., so that when already paired with a Bluetooth enabled data logging hex, you can fetch data while the data logging continues, without resetting to Bluetooth mode. |
My main concern is small changes/tweaks between CODAL releases years apart (for instance the OOB hex file has a CODAL version over 3 years old, without the 3-reset-tap-to-pair). I think we need to keep the MakeCode Live and MakeCode under test hex files. The Python editor hex file we should probably keep as well as it could have changes in configuration (accidental or on purpose) in future releases. To be fair, that should be caught in the Python Editor release tests, but it's possible the change was introduced in an in-between CODAL release (compared with the CODAL versions in the different MakeCodes). So, this is a good way to ensure it's still working combined with a new MakeCode release as well. Between the "meet the micro:bit" and "out of box", would you be confident that if it works on one it would work with both?
Right, I see what you mean now. Could you provide some very simple steps to add them to the instructions? Or is
No, we don't need loads of data, but I wanted to make sure there is enough, as I'd expect an experienced tester trying to run through these steps as fast as possible to flash via WebUSB, and immediately after trying to read the MY_DATA file.
Ah, yes, I'll add that as well. |
Okay, I think I've added everything discuss, except for this one:
@martinwork could you check it's all alright? Feel free to add more comments or improvements. |
No description provided.