If the shulker is on a team with the collisionRules set to never, it still has a collision.
How to reproduce:
Add a team: /scoreboard teams add test
Change the collision rule: /scoreboard teams option test collisionRule never (or pushOtherTeams)
Summon a shulker in the test team: /summon Shulker ~ ~1 ~ {Team:"test",NoAI:1b} or let a shulker join the 'test' team (/scoreboard teams join test @e[type=Shulker]).
Try to stand on it, you will not pass trough the Shulker.
Comments 2
As cool as that would be, FVbico is correct, they are intended to act like a solid block and have different collision mechanics. While normal mobs slightly push you and you slightly push them, shulkers won't be pushed and don't push you, they just stop you. Because the collision rule applies to the normal mob pushing mechanic, it doesn't affect the shulker.
Shulkers act like they are blocks, you can stand on them, etc. this behaviour is intended and won't change when the collision rule is changed.