Skip to main content

The python-based setuptest for the CYBR CSCW-SUITE (CCS): https://c-c-s.sourceforge.io/

(will use selenium & pytest)

Requirements:

  1. python3

  2. pytest

  3. Chrome

  4. ChromeDriver (must fit to the Chrome-version on your system!)

  5. a CYBR CSCW-SUITE (CCS) started on your server (docker-compose up --build was performed and you can see the login-form when you enter the IP (or localhost) in your browser)

  6. 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) paradigm


USAGE (short version)

*download the setuptest

*unzip

*create a new Python3 project in your IDE (eg PyCharm)

*add the setuptest-package folder stpkg/ 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 interpreter
  • in PyCharm: create a new venv
  • copy the setuptest-package-directory stpkg/ into the PycharmProjects/your_new_project-name/
  • in PyCharm: open the project-settings ([Alt][Ctrl][s]), select Project: 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 project open the stpkg/ select setuptest.py and [Ctrl][Shift][F10] (or: rightclick & "RUN SETUPTEST") -> this will start the setup and test-automation & will open a GUI
  • read 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 project open 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 minutes


Context:

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 SERVER

  • creating the database-tables
  • creating 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 CFLX
  • making some posts & direct-answers (repetitive for all WBS-Levels)

NOTICE:

  1. these are simulated tasks, you can & will perform most of them manually for your real projects in the same way
  2. if 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 setuptest

The 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 CCS
  • Make the automated setup for your first 5 projects
  • Will 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.py

Walk-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.py

BE 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.

Metadata

Release files for setuptest 1.1.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for setuptest 1.1.7
File Size Uploaded Provenance Actions
setuptest-1.1.7.tar.gz 35.4 kB Without provenance Details for setuptest-1.1.7.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for setuptest 1.1.7
File Interpreter ABI Platform Actions
setuptest-1.1.7-py3-none-any.whl Python 3 none any Details for setuptest-1.1.7-py3-none-any.whl

Total release size: 83.0 kB

Release files / setuptest-1.1.7.tar.gz

Download URL setuptest-1.1.7.tar.gz
Size 35.4 kB
Tags Source
SHA-256 checksum
How to use checksums
95db93bf6847ed5409e91cc90e84552be49f2447451a048712848d27d5a5c49e
BLAKE2b-256 checksum
How to use checksums
1e6a71c8a38e3925b54c98a895e20d5e0b9d5fdf104bf3791ca9cad969d09bfb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.0 requests-toolbelt/0.9.1 tqdm/4.39.0 CPython/3.6.8

Release files / setuptest-1.1.7-py3-none-any.whl

Download URL setuptest-1.1.7-py3-none-any.whl
Size 47.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
93df6cf4c80c557b7a2b57c15d25f83bc673330c12e572bec1fe0944d9d23e6d
BLAKE2b-256 checksum
How to use checksums
a55d76e532095b27fec348e993deecfc42032dc57246bf03de7e7d43304bff5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.0 requests-toolbelt/0.9.1 tqdm/4.39.0 CPython/3.6.8

Security for setuptest 1.1.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page