Posts

Showing posts from July, 2019

Week 9 Report

First of all, This week was the second Evaluation Result of the Project and I am happy on working on this project and thanks to all LO family.

This week:
after the result it was only 3 days so I was worked on:

1) Test That Project is to work efficiently and ready to push on the master. I make this by generating many test cases by open the LO app and start to log some events and make sure that the corresponding generated test Case is working efficiently. I provide some of these in the last week Report So I will not attach images here. But the reason why I give this some time that I can say now that all the project is ready to be merged.

2) I was Update some parts of the grammar and adding meaningful comments to make the project well documented if we want to extend it later. This can be found in this Commit:
https://gerrit.libreoffice.org/#/c/76510/

3) Also, I have been trying to find out how to add an unsupported element to the UI python framework to be able to use it in making UI test …

Week 8 Report

Image
This week: (The report may look very long but this is because of images only)

I start testing the performance of the new UI logger. I tried this by opening the LO and start to make some actions and log the actions and convert it to a UI test.




I will add here these examples of the generating logs that include most of the logger features and the corresponding generated python UI test.
writer these logs==>>


 Generates this UI test ==>>
Calc  these logs==>>

 Generates this UI test ==>>

 And by similarity, we can try math and impress...

============================================================== ============================================================== Also, I was having a problem
1) while trying to move between the UI Objects with the keyboard I got these old logs :


 I worked on this and convert it to be:

2) Also solve some problems in UNO Commands that appears when you have 2 parameters.
============================================================== ======…

Week 7 Report

This week:

I was implementing the Compiler of the Special Commands of:

       1) Calc
    (calc_Type_command - calc_switch_sheet - calc_Select_cell - calc_AutoFill_filter)

        2) impress
    (impress_Type_command)    

        3) math
    (math_element_selector - math_Type_command)


Also, I have finished the General Commands Compiler:
    (setZoom_command)

this work can be found here:
https://gerrit.libreoffice.org/75527
----------------------------------------------------------------------------------------------------------
Then I working on Changing the Structure of the Compiler to become more genneral by adding Some general functions that can make the Compiling easier like these functions:

    1) init_app
    2) init_Object
    3) write_line_without_parameters
    4) write_line_with_one_parameters

this Work Can be found here:
                     https://gerrit.libreoffice.org/#/c/75529/
---------------------------------------------------------------------------------------------------------…

Week 6 Report

Image
This week:

I was implementing the Compiler of the UI Objects:

        1) ButtonUIObject
        2) CheckBoxUIObject   
        3) TabControlUIObject
        4) ComboBoxUIObject
        5) RadioButtonUIObject
        6) ListBoxUIObject
        7) SpinFieldUIObject
        8) EditUIObject       

Also, I implemented a simple algorithm that will remove some redundant lines for example with the old logger we may have this:




now we will get this doing same functionality:




All this changes can be found here:
https://gerrit.libreoffice.org/#/c/75156/


Also, thier was missing part in the Close Dialog Compiler it's now implemented here:
https://gerrit.libreoffice.org/#/c/75165/

Also, This week I worked in the Special Commands from the writer application and implement:

    1) Type Command
    2) Select Command
    3) GoTo page

this can be found here: 
https://gerrit.libreoffice.org/75171


Next Week I will try to finish the Compiler of all the Special Commands and the General Commands and start imtergrating and…

Week 5 Report

Image
At week 4 I have finished the first phase of the new UI logger which was the grammar and the new sentences of the log messages and rewrite all the log statement with the new grammar.

This week I have started the implementation of the Compiler of the new logger grammar. This Compiler is responsible for taking the log file with the new grammar and generate a UI test case that performs the same as the user actions.

This week I write the python script that will take the input addresses from the user and the path of the test case to be generated. Also, I begin to implement the handler of each type of commands. This handler is the functions that called for each type of commands found in the grammar and start to replace it by the corresponding UI python functions that used for testing. I have finished this week the Starter handler, Uno commands Handler and Dialog handler.

This can be found here.

Also, all these changes are stored in this branch:

private/EL-SHREIF/ui_logger
to test the new scr…