Пример #1
0
    def test_1UnterbereichBezeichnungAendern(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can change information of a "unterbereich" as Admin.
            We change the name of the "unterbereich" by appending a "_1".
        """
        # Login as Admin
        loginAsLukasAdmin(self)

        # Hinzufügen eines Unterbereichs
        organisationseinheit = "Referat Finanzen"
        unterbereich = "test_unterbereich"
        createUnterbereich(self, organisationseinheit, unterbereich)

        # ändern der Bezeichnung für test_unterbereich
        suffix = "_1"
        text = unterbereich + " (" + organisationseinheit + ")"
        self.browser.find_element_by_xpath("//a[contains(text(), '%s')]" %
                                           text).click()
        self.browser.find_element_by_xpath(
            "//input[@id='id_bezeichnung']").send_keys(suffix)
        self.browser.find_element_by_xpath("//input[@name='_save']").click()

        # Überprüfen ob alles geklappt hat
        text = unterbereich + suffix + " (" + organisationseinheit + ")"
        self.assertTrue(
            self.browser.find_element_by_xpath("//li[@class='success']"))
        self.assertTrue(
            self.browser.find_element_by_xpath("//a[contains(text(), '%s')]" %
                                               text))
        pass
Пример #2
0
    def test_1AmtWorkloadAendern(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can change the workload of a funktion as Admin.
        """
        # Login as Admin
        loginAsLukasAdmin(self)

        # Hinzufügen eines Amtes
        funktion = "test_amt"
        organisationseinheit = "Referat Finanzen"
        unterbereich = "Bereich Buchhaltung"
        createAmt(self, organisationseinheit, unterbereich, funktion)

        # ändern des Referates, dem der Bereich zugeordnet wurde
        workload = "5"
        text = unterbereich + " (" + organisationseinheit + ")"
        self.browser.find_element_by_xpath("//a[contains(text(), '%s')]" %
                                           text).click()
        self.browser.find_element_by_xpath(
            "//tr/td[@class='original']/p[contains(text(), '%s')]/../../td[@class='field-workload']/input"
            % (funktion + " " + text)).send_keys(workload)
        self.browser.find_element_by_xpath("//input[@name='_save']").click()

        # Überprüfen ob alles geklappt hat
        """
            Überprüfung ob Workload geändert wurde
            TODO: Testen ob Workload tatsächlich geändert wurde
        """
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//li[@class='success']/a[contains(text(), '%s')]" % text))
        pass
Пример #3
0
    def test_1AmtBezeichnungAendern(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can change information of a funktion as Admin.
            We change the name of the funktion by appending a "_1".
        """
        # Login as Admin
        loginAsLukasAdmin(self)

        # Hinzufügen eines Amtes
        funktion = "test_amt"
        organisationseinheit = "Referat Finanzen"
        unterbereich = "Bereich Buchhaltung"
        createAmt(self, organisationseinheit, unterbereich, funktion)

        # ändern des Referates, dem der Bereich zugeordnet wurde
        suffix = "_1"
        text = unterbereich + " (" + organisationseinheit + ")"
        self.browser.find_element_by_xpath("//a[contains(text(), '%s')]" %
                                           text).click()
        self.browser.find_element_by_xpath(
            "//tr/td[@class='original']/p[contains(text(), '%s')]/../../td[@class='field-bezeichnung']/input"
            % (funktion + " " + text)).send_keys(suffix)
        self.browser.find_element_by_xpath("//input[@name='_save']").click()
        """
            Überprüfung ob Funktion hinzugefügt wurde
            TODO: Testen ob das Amt jetzt wirklich existiert
        """
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//li[@class='success']/a[contains(text(), '%s')]" % text))
        pass
Пример #4
0
    def test_1OrganisationseinheitBezeichnungAendern(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can change information of a "organisationseinheit" as Admin.
            We change the name of the "organisationseinheit" by appending a "_1".
        """
        # Login as Admin
        loginAsLukasAdmin(self)

        # Hinzufügen eines organisationseinheit
        organisationseinheit = "test_referat"
        createReferat(self, organisationseinheit)

        # ändern der Bezeichnung für test_referat
        suffix = "_1"
        self.browser.find_element_by_xpath("//a[contains(text(), '%s')]" %
                                           organisationseinheit).click()
        self.browser.find_element_by_xpath(
            "//input[@id='id_bezeichnung']").send_keys(suffix)
        self.browser.find_element_by_xpath("//input[@name='_save']").click()

        # Überprüfen ob alles geklappt hat
        self.assertTrue(
            self.browser.find_element_by_xpath("//li[@class='success']"))
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//a[contains(text(), '%s')]" %
                (organisationseinheit + suffix)))
        pass
Пример #5
0
    def test_1MitgliedEntfernen_AsSuperuser(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can delete a new Member as Admin and if the
            Member is deleted correctly in the table.

            Steps:

            * login as Admin
            * add a Member
            * delete Member
        """

        # Login as Admin
        loginAsLukasAdmin(self)
        addMitglied(self)
        """
            Löschen eines Mitglieds
        """
        self.browser.find_element_by_xpath(
            "//form[@method='post']/label/span").click()
        self.browser.find_element_by_xpath("//a[@id='delbtnl']").click()
        self.browser.find_element_by_xpath(
            "//a[@id='delmitgliederconfirm']").click()
        """
            Überprüfung ob Mitglied gelöscht
        """
        text = self.browser.find_element_by_xpath("//div[@id='notification']")
        self.assertTrue(text)
        pass
Пример #6
0
    def test_login_superuser(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can login as Admin and all sites are displayed correctly.
        """
        # login
        loginAsLukasAdmin(self)

        """
            TODO: Check ob es ein Admin ist.
        """
        pass
Пример #7
0
    def test_1MitgliedHinzufügen_AsSuperuser(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can add a new Member as Admin and if the
            Member is displayed correctly in the table.

            Steps:

            * login as Admin
            * add a Member
        """

        # Login as Admin
        loginAsLukasAdmin(self)
        addMitglied(self)
        pass
Пример #8
0
    def test_1OrganisationseinheitHinzufuegen_AsSuperuser(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can add a "Organisationseinheit" as Admin.

            Steps:

            * login as Admin
            * add a "Organisationseinheit"
        """
        # Login as Admin
        loginAsLukasAdmin(self)

        # Hinzufügen eines organisationseinheit
        organisationseinheit = "test_referat"
        createReferat(self, organisationseinheit)
        pass
Пример #9
0
    def test_1UnterbereichHinzufuegen_AsSuperuser(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can add a "unterbereich" as Admin.

            Steps:

            * login as Admin
            * add a "unterbereich"
        """
        # Login as Admin
        loginAsLukasAdmin(self)

        # Hinzufügen eines Unterbereichs
        organisationseinheit = "Referat Finanzen"
        unterbereich = "test_unterbereich"
        createUnterbereich(self, organisationseinheit, unterbereich)
        pass
Пример #10
0
    def test_1AmtReferatAendern(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can change the "organisationseinheit" of a funktion as Admin.
        """
        # Login as Admin
        loginAsLukasAdmin(self)

        # Hinzufügen eines organisationseinheit
        organisationseinheit = "test_referat"
        createReferat(self, organisationseinheit)
        self.browser.find_element_by_xpath("//a[@href='/']").click()

        # Hinzufügen eines Unterbereichs
        unterbereich = "test_unterbereich"
        createUnterbereich(self, organisationseinheit, unterbereich)
        self.browser.find_element_by_xpath("//a[@href='/']").click()

        # Hinzufügen eines Amtes
        funktion = "test_amt"
        organisationseinheit2 = "Referat Finanzen"
        createAmt(self, organisationseinheit, unterbereich, funktion)

        # ändern des Referates, dem der Bereich zugeordnet wurde
        workload = "5"
        text = unterbereich + " (" + organisationseinheit + ")"
        self.browser.find_element_by_xpath("//a[contains(text(), '%s')]" %
                                           text).click()
        select_referat = Select(
            self.browser.find_element_by_xpath(
                "//select[@id='id_organisationseinheit']"))
        select_referat.select_by_visible_text(organisationseinheit2)
        self.browser.find_element_by_xpath("//input[@name='_save']").click()

        # Überprüfen ob alles geklappt hat
        """
            Überprüfung ob Funktion verschoben wurde
            TODO: Testen ob das Amt jetzt wirklich verschoben ist
        """
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//li[@class='success']/a[contains(text(), '%s')]" %
                (unterbereich + " (" + organisationseinheit2 + ")")))
        pass
Пример #11
0
    def test_1FunktionHinzufuegen_AsSuperuser(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can add a funktion as Admin.

            Steps:

            * login as Admin
            * add a funktion
        """
        # Login as Admin
        loginAsLukasAdmin(self)

        # Hinzufügen eines Amtes
        funktion = "test_amt"
        organisationseinheit = "Referat Finanzen"
        unterbereich = "Bereich Buchhaltung"
        createAmt(self, organisationseinheit, unterbereich, funktion)
        pass
Пример #12
0
    def test_1AemtEntfernen_AsSuperuser(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can delete a funktion as Admin.

            Steps:

            * login as Admin
            * add a funktion
            * delete the funktion
        """

        # Login as Admin
        loginAsLukasAdmin(self)

        # Hinzufügen eines Amtes
        funktion = "test_amt"
        organisationseinheit = "Referat Finanzen"
        unterbereich = "Bereich Buchhaltung"
        createAmt(self, organisationseinheit, unterbereich, funktion)

        # Entfernen eines Amts
        unterbereich = unterbereich + " (" + organisationseinheit + ")"
        self.browser.find_element_by_xpath("//a[contains(text(), '%s')]" %
                                           unterbereich).click()
        self.browser.find_element_by_xpath(
            "//tr/td[@class='original']/p[contains(text(), '%s')]/../../td[@class='delete']/input"
            % (funktion + " " + unterbereich)).click()
        self.browser.find_element_by_xpath("//input[@name='_save']").click()
        """
            Überprüfung ob Funktion entfernt wurde
            TODO: Testen ob das Amt jetzt wirklich nicht mehr da ist
        """
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//li[@class='success']/a[contains(text(), '%s')]" %
                unterbereich))
        pass
Пример #13
0
    def test_1UnterbereichEntfernen_AsSuperuser(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can delete a "unterbereich" as Admin.

            Steps:

            * login as Admin
            * add a "unterbereich"
            * delete the "unterbereich"
        """

        # Login as Admin
        loginAsLukasAdmin(self)

        # Hinzufügen eines Unterbereichs
        organisationseinheit = "Referat Finanzen"
        unterbereich = "test_unterbereich"
        createUnterbereich(self, organisationseinheit, unterbereich)

        # Entfernen eines unterbereiches
        self.browser.find_element_by_xpath("//a[contains(text(), '%s')]" %
                                           unterbereich).click()
        self.browser.find_element_by_xpath("//a[@class='deletelink']").click()
        self.browser.find_element_by_xpath(
            "//div/input[@type='submit']").click()

        # Überprüfen ob alles geklappt hat
        self.assertTrue(
            self.browser.find_element_by_xpath("//li[@class='success']"))
        tmpbool = True
        try:
            self.browser.find_element_by_xpath("//a[contains(text(), '%s')]" %
                                               unterbereich)
        except BaseException:
            tmpbool = False
        self.assertFalse(tmpbool)
        pass
Пример #14
0
    def test_1MitgliedAendern_AsSuperuser(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can change information of a Member as Admin and if the
            Member is changed correctly in the table.

            Steps:

            * login as Admin
            * add a Member
            * change Member Data
            * check if everything is correct displayed
        """
        # Login as Admin
        loginAsLukasAdmin(self)
        addMitglied(self)

        """
            Auswählen eines Mitglieds (Stift)
        """
        self.browser.find_element_by_xpath("//tbody/tr/td/a").click()

        """
            Verändern von Feldern
        """
        self.browser.find_element_by_xpath(
            "//input[@id='vorname']").send_keys('_1')
        self.browser.find_element_by_xpath(
            "//input[@id='nachname']").send_keys('_1')
        self.browser.find_element_by_xpath("//a[@id='save_button']").click()

        self.assertEqual(
            self.browser.find_element_by_xpath("//tr[@class='mitglied']/td[contains(text(), 'Hans_1 Peter_1')]").text,
            "Hans_1 Peter_1",
            msg="Hans Peter wurde nicht geändert")
        pass
Пример #15
0
    def test_1UnterbereichReferatAendern(self):
        """
            This is a "positive" Systemtest as Blackboxtest.
            Here we want to check if you can change the "organisationseinheit" of a "unterbereich" as Admin.
        """
        # Login as Admin
        loginAsLukasAdmin(self)

        # Hinzufügen eines organisationseinheit
        referat2 = "test_referat"
        createReferat(self, referat2)
        self.browser.find_element_by_xpath("//a[@href='/']").click()

        # Hinzufügen eines Unterbereichs
        organisationseinheit = "Referat Finanzen"
        unterbereich = "test_unterbereich"
        createUnterbereich(self, organisationseinheit, unterbereich)

        # ändern des Referates, dem der Bereich zugeordnet wurde
        text = unterbereich + " (" + organisationseinheit + ")"
        self.browser.find_element_by_xpath("//a[contains(text(), '%s')]" %
                                           text).click()
        select_referat = Select(
            self.browser.find_element_by_xpath(
                "//select[@id='id_organisationseinheit']"))
        select_referat.select_by_visible_text(referat2)
        self.browser.find_element_by_xpath("//input[@name='_save']").click()

        # Überprüfen ob alles geklappt hat
        text = unterbereich + " (" + referat2 + ")"
        self.assertTrue(
            self.browser.find_element_by_xpath("//li[@class='success']"))
        self.assertTrue(
            self.browser.find_element_by_xpath("//a[contains(text(), '%s')]" %
                                               text))
        pass
Пример #16
0
    def test_50MitgliederHinzufügen_AsSuperuser_lookAsUser(self):
        """
            This is a complex "positive" Systemtest as Blackboxtest.
            Here we want to check if you can add a multiple new Members (50) as Admin and if the
            Member is displayed correctly in the table.
            We also want to check if the Pagination is working correctly.

            Steps:

            * login as Admin
            * add a Member (as loop)
            * check Pagination
        """

        # Login as Admin
        loginAsLukasAdmin(self)

        # Hinzufügen eines Amtes
        funktion = "test_amt"
        organisationseinheit = "Referat Finanzen"
        unterbereich = "Bereich Buchhaltung"
        createAmt(self, organisationseinheit, unterbereich, funktion)
        self.browser.find_element_by_xpath("//a[@href='/']").click()

        for value in range(50):
            # print(f"Mitglied {value} wird hinzugefügt")
            try:
                addMitgliedWithParameters(self, f"Max_{value}", "Mustermann",
                                          "Musti")
                self.browser.find_element_by_xpath(
                    "//ul[@class='pagination']/li/a[contains(text(), '1')]"
                ).click()
            except:
                self.assertTrue(False,
                                msg=f"Mitglied {value} wurde übersprungen")
                pass
            pass

        # Test Mitglieder Pagination Seiten
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//ul[@class='pagination']/li/a[contains(text(), '1')]"))
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//ul[@class='pagination']/li/a[contains(text(), '2')]"))
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//ul[@class='pagination']/li/a[contains(text(), '3')]"))
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//ul[@class='pagination']/li/a[contains(text(), '4')]"))
        """
            Logout and login as User
        """
        self.browser.find_element_by_xpath("//li/a[@href='/logout']").click()
        loginAsLukasUser(self)

        # Test Mitglieder Pagination Seiten
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//ul[@class='pagination']/li/a[contains(text(), '1')]"))
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//ul[@class='pagination']/li/a[contains(text(), '2')]"))
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//ul[@class='pagination']/li/a[contains(text(), '3')]"))
        self.assertTrue(
            self.browser.find_element_by_xpath(
                "//ul[@class='pagination']/li/a[contains(text(), '4')]"))
        pass
Пример #17
0
    def test_ReferatUnterbereichAmtHinzufuegen_AsSuperuser(self):
        """
            This is a complex "positive" Systemtest as Blackboxtest.
            Here we want to check if you can add a organisationseinheit, unterbereich and funktion as Admin.
            We also check if we can add a new Member with the new data and if everything is displayed correctly
            in "/aemter/".

            Steps:

            * login as Admin
            * add a "organisationseinheit"
            * add a "unterbereich"
            * add a funktion
            * create a Member
            * navigate to aemteruebersicht "/aemter/"
        """
        # Login as Admin
        loginAsLukasAdmin(self)

        organisationseinheit = "test_referat"
        unterbereich = "test_unterbereich"
        funktion = "test_amt"

        """
            Erstellen von allen
        """
        createReferat(self, organisationseinheit)
        self.browser.find_element_by_xpath("//a[@href='/']").click()

        createUnterbereich(self, organisationseinheit, unterbereich)
        self.browser.find_element_by_xpath("//a[@href='/']").click()

        createAmt(self, organisationseinheit, unterbereich, funktion)
        self.browser.find_element_by_xpath("//a[@href='/']").click()

        """
            Hinzufügen eines Mitglieds mit den Parametern
        """
        # navigieren zu Mitglied hinzufügen
        self.browser.find_element_by_xpath(
            "//a[@href='/mitglieder/erstellen']").click()

        # auswahl des Referates, Unterbereices, Amts
        self.browser.find_element_by_xpath(
            "//div[@id='div_selectreferat1']/div/input").click()
        self.browser.find_element_by_xpath(
            "//span[text()='%s']" % organisationseinheit).click()

        self.browser.find_element_by_xpath(
            "//div[@id='div_selectbereich1']/div/div/input").click()
        self.browser.find_element_by_xpath(
            "//span[text()='%s']" % unterbereich).click()

        self.browser.find_element_by_xpath(
            "//div[@id='div_selectamt1']/div/div/input").click()
        self.browser.find_element_by_xpath("//span[text()='%s']" % funktion).click()

        # weitere Daten Hinzufügen
        self.browser.find_element_by_name('vorname').send_keys('Hans')
        self.browser.find_element_by_name('nachname').send_keys('Peter')
        self.browser.find_element_by_name('spitzname').send_keys('Hansi')
        self.browser.find_element_by_name(
            'email1').send_keys('*****@*****.**')
        self.browser.find_element_by_name(
            'strasse').send_keys('Straße der Freiheit')
        self.browser.find_element_by_name('hausnr').send_keys('24')
        self.browser.find_element_by_name('plz').send_keys('01561')
        self.browser.find_element_by_name('ort').send_keys('Ebersbach')
        self.browser.find_element_by_name(
            'telefon_mobil').send_keys('0362594833')

        # Speichern
        self.browser.find_element_by_id('save_button').click()
        self.assertEqual(self.browser.current_url,
                         self.live_server_url + reverse('mitglieder:homepage'),
                         msg="Weiterleitung nicht erfolgt")
        self.assertEqual(
            self.browser.find_element_by_xpath("//tr[@class='mitglied']/td[contains(text(), 'Hans Peter')]").text,
            "Hans Peter",
            msg="Hans Peter wurde nicht angelegt")
        searchstring = funktion + " " + unterbereich + " (" + organisationseinheit + ")"
        self.assertEqual(
            self.browser.find_element_by_xpath(
                "//tr[@class='mitglied']/td/ul/li[contains(text(), '%s')]" %
                searchstring).text,
            searchstring,
            msg="Funktion wurde nicht richtig zugewiesen")

        """
            Schauen in der Ämter Übersicht ob alles angezeigt wird
        """
        # navigieren zur Ämterübersicht
        self.browser.find_element_by_xpath("//a[@href='/aemter']").click()

        # zu seite 3
        self.browser.find_element_by_xpath("//a[@href='?page=3']").click()

        # öffnen der collabseables
        searchstring = organisationseinheit
        self.browser.find_element_by_xpath(
            "//div[text()='%s']" % searchstring).click()
        searchstring = unterbereich
        self.browser.find_element_by_xpath(
            "//div[text()='%s']" % searchstring).click()

        # überprüfen ob Funktion da ist
        self.assertEqual(
            self.browser.find_element_by_xpath(
                "//tr/td[contains(text(), '%s')]" %
                funktion).text,
            funktion,
            msg="Funktion ist nicht in Übersicht Ämter vorhanden")
        """
        TODO: Schauen ob Person richtig einem Funktion zugeordnet wurde
        self.assertEqual(self.browser.find_element_by_xpath("//tr/td[contains(text(), 'Hans Peter\n')]").text,
                            "Hans Peter",
                            msg="Hans Peter wurde nicht richtig dem Funktion hinzugefügt")
        """
        pass