Package: setuptest
The python-based setuptest for the CYBR CSCW-SUITE (CCS):https://c-c-s.sourceforge.io/(will use selenium & pytest)Requirements:python3pytestChromeChromeDriver (must fit to the Chrome-version on your system!)a CYBR CSCW-SUITE (CCS) started on your server (docker-compose up --buildwas performed and you can see the login-form when you enter the IP (or localhost) in your browser)PyCharm if you want to follow the steps below (else, you need to make some adaptions)You can get PyCharm CE for free at:https://www.jetbrains.com/pycharm/download/You can get ChromeDriver from:https://chromedriver.chromium.org/)
or from the source mentioned in the setup-tutorial related to your local operation system (Windows, Mac, Linux ..)This setuptest is part of the CYBR-CSCW-SUITE (CCS)you can get this FREE groupware-solution via sourceforge:https://c-c-s.sourceforge.io/NOTICE: You can use this setuptest as a blueprint / basis for further test-automation with Selenium following the Page Object Model (POM) paradigmUSAGE (short version)*download the setuptest*unzip*create a new Python3 project in your IDE (eg PyCharm)*add the setuptest-package folderstpkg/to your project within your Python IDE (eg PyCharm), resolve the dependencies by adding pytest & selenium - then execute /run the setuptest.py directly from there.
(no build / install is needed then)Example / Step-by-step for PyCharm (detailed version):1. PyCharm steps & for setting-up:in PyCharm: create a new project, select a python3.6 or 3.7 interpreterin PyCharm: create a new venvcopythe setuptest-package-directorystpkg/into thePycharmProjects/your_new_project-name/in PyCharm: open the project-settings ([Alt][Ctrl][s]), selectProject: your_project_name -> Project Interpreter, select the[+] icon-> install "selenium" & "pytest" (just type into the search field on top of the menu)[OK])2. PyCharm steps & executing the setup & testautomation of the CCS:in PyCharm, in your projectopen the stpkg/ select setuptest.py and [Ctrl][Shift][F10](or: rightclick & "RUN SETUPTEST") -> this will start the setup and test-automation & will open a GUIread the info in the GUI, click[CONTINUE], click[SETUP]& make the proper setting (modifications of the Conf/test_configVar.py,at least the IP needs to be set(IP of the server or localhost)). Click save[Ctrl][S]to overwrite the config-file.Open & RUN again: in PyCharm, in your projectopen the stpkg/ select setuptest.py and [Ctrl][Shift][F10](or: rightclick & "RUN SETUPTEST")click[CONTINUE],scroll down& select the setup / test buttons as needed - or simply[RUN ALL 7]==>> your CYBR CSCW-SUITE will be installed, 5 projects created & a test - and showup of the application will be performed. The automated walk-through will take about 30 minutesContext:the ccs-setuptest is simulating the user's / application-administrator's setup-steps with the help of selenium & pytest.the setuptest will perform the automated steps outgoing from your LOCAL MACHINE accessing the ccs-web-app ON YOUR SERVERcreating the database-tablescreating a Super-Admin account (= the first user who makes the registration is getting super-user permissions for the app!)based on this super-user-permission: login, open the ccs-management & creates the slots for 5 projects
(with the Super-User as Project Administrator & entering the SendGrid API-Key for the email-functionality of each project)logging into project1 & creating a Project & the WBS (Work-Breakdown-Structure)creating a user-profile, performing a personality-assessment from the build-in personality-test & checking the user's CFLXmaking some posts & direct-answers (repetitive for all WBS-Levels)NOTICE:these are simulated tasks, you can & will perform most of them manually for your real projects in the same wayif you run this test, the project in slot1 will be populated with the example-project. It might be a good idea, to keep it that way - or even better: later modify the content to meet yor needs / create a WBS representing a structure for a typical project of your group or organization or even a set of blueprints available for an extended deployment-automation throughout the company.Be aware: you need to make the mandatory needed changes within the Conf/test_configVars.py file before you run the setuptestThe setuptest will:Open the Conf/test_configVars.py file, so you can modify the values (The IP of your CCS, the SendGrid API-Key, E-Mail-Address & publicPGP-Key ..)Call the installation-script for creating the database-tables of your CCSMake the automated setup for your first 5 projectsWill create a testing-project and simulate an admin who is creating a project, a WBS, creates a user-profile, testst the user's CFLX, starts to make a posting.usage with GUI (tkinter)<1st page>The yellow [CONTINUE] button
will open the page displaying the actual setup-install values.<2nd page>The yellow [SETUP] button will open the Conf/test_configVars.py file, so you can modify the values (The IP of your CCS, the SendGrid API-Key, E-Mail-Address & publicPGP-Key ..)make the changes, save & re-run<2nd page>The red [RUN ALL 7] button (bottom of 2nd page) will perform the installation with the values
& perform a fully automated show-up-test showing and explaining you the basic functionalities
for setting-up the projects as well as how to use the application.You can call the scripts manually - and only the selected one or ones from your terminal / console/ bash/ shell/ as well:for running all tests within the directory: pytest foldername/eg for running all setups or running all tests:pytest RunSetups/or:pytest Tests/for running a single test, cd to the test and type: pytest filename.py (see details below)Setup-Scripts available:cd RunSetups/pytest test_ini_1_createTables.py

pytest test_ini_2_registerSuperadmin.py

pytest test_ini_3_1stProjectSetup.py

pytest test_ini_4_4ProjectsSetup.pyWalk-Through tests available (still in beta: will work, but might throw errors. Its a test-script issue then - not an application one!):cd Tests/pytest test_loginCreateProjectCreateWBS.py

pytest test_loginMakePosts.py 

pytest test_loginPersProfileComplete.pyBE AWARE: this setuptest will use the first slot of your CCS and populate it with an example project!This means, your per default available five projects for your productive work will be reduced to four.